Part Number Hot Search : 
N5266 TE1962 HD64326 30639 UC3842B RB160 MNR4G BS2103F
Product Description
Full Text Search
 

To Download PCI6540-BB13BC Datasheet File

  If you can't view the Datasheet, Please click here to try to view without PDF Reader .  
 
 


  Datasheet File OCR Text:
  pci 6540 data book

pci 6540 data book version 1.0 november 2003 website : http://www.plxtech.com technical support : http://www.plxtech.com/support/ phone : 408 774-9060 800 759-3735 fax : 408 774-2169
? 2003 plx technology, inc. all rights reserved. plx technology, inc., retains the right to make changes to this product at any time, without notice. products may have minor variations to this publication, known as errata. plx assumes no liability whatsoever, including infringement of any patent or copyright, for sale and use of plx products. this device is not designed, intended, authorized, or warranted to be suitable for use in medical or life-support applications, devices, or systems, or other critical applications. plx technology and the plx logo are registered trademarks of plx technology, inc. hypertransport is a trademark of the hypertransport technology consortium. other brands and names are the property of their respective owners. order number: pci 6540-sil-db-p1-1.0 printed in the usa, november 2003
pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. v contents figures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xiii tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xv registers. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xvii preface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxiii supplemental documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .xxiii data assignment conventions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .xxiv revision history. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .xxiv feature summary. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxv 1. introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-1 1.1. company and product information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-1 1.2. pci 6000 bridge series . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-2 1.2.1. pci 6540 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-3 1.3. feature description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-4 1.4. applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-4 1.4.1. multiple device expansion. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-4 1.4.2. intelligent adapters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-5 1.4.3. compactpci universal application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-5 2. functional overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-1 2.1. general operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-1 2.2. write transactions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-2 2.3. read transactions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-2 2.4. non-transparent mode. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-2 3. pin description. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-1 3.1. pin summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-1 3.2. pull-up and pull-down resistor recommendations. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-1 3.2.1. primary and secondary pci bus interface pins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-1 3.2.2. primary and secondary clock pins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-2 3.2.3. reset pins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-2 3.2.4. compactpci hot swap pins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-2 3.2.5. jtag/boundary scan pins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-2 3.2.6. serial eeprom pins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-3 3.2.7. gpio pins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-3 3.2.8. miscellaneous pins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-3 3.2.9. multiplexed transparent and non-transparent pins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-3 3.3. power supply decoupling. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-3 3.4. pinout common to all operating modes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-4 3.5. pinout specific to transparent and non-transparent modes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-25
contents pci 6540 data book, version 1.0 vi ? 2003 plx technology, inc. all rights reserved. 4. clocking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-1 4.1. primary and secondary clock inputs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-1 4.2. secondary clock outputs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-1 4.3. disabling secondary clock outputs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-1 4.4. using an external clock source . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-1 4.5. frequency division options. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-2 4.6. running secondary port faster than primary port. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-2 4.7. universal mode clock behavior . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-2 4.8. pll and clock jitter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-3 4.9. detecting pci bus speed with the reference clock . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-4 4.10. primary or secondary clock frequency measurement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-4 5. reset and initialization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-1 5.1. pci-xcap connections and operating frequency . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-1 5.1.1. primary port pci-xcap connection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-1 5.1.2. secondary port pci-xcap connection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-1 5.2. secondary bus mode and frequency initialization sequence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-1 5.3. conventional pci mode 66 mhz operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-2 5.4. reset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-2 5.4.1. power good reset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-2 5.4.1.1. pwrgd, resets, and pci-x signals relationship. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-4 5.4.2. primary reset input . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-6 5.4.3. primary reset output . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-6 5.4.4. secondary reset input . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-6 5.4.4.1. universal mode secondary reset input . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-7 5.4.5. secondary reset output . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-7 5.4.6. software resets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-7 5.4.7. power management internal reset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-7 5.4.8. reset inputs table. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-8 5.4.9. power-up and reset pin state table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-9 5.5. register initialization. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-14 5.5.1. default initialization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-14 5.5.2. serial eeprom initialization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-14 5.5.3. host initialization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-14 6. registers. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-1 6.1. pci configuration register address mapping?transparent mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-2 6.1.1. pci type 1 header registers?transparent mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-4 6.1.2. device-specific registers?transparent mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-16 6.1.2.1. chip, diagnostic, and arbiter control registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-16 6.1.2.2. primary flow-through control register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-18 6.1.2.3. timeout control register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-19 6.1.2.4. miscellaneous options register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-20 6.1.2.5. prefetch control registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-22 6.1.2.6. secondary flow-through control register. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-26 6.1.2.7. buffer and internal arbiter control registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-27 6.1.2.8. test and serial eeprom registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-29 6.1.2.9. timer registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-31 6.1.2.10. primary system error event register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-32 6.1.2.11. gpio[3:0] registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-33 6.1.2.12. clock control register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-34 6.1.2.13. primary system error status register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-34 6.1.2.14. clock run register. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-35 6.1.2.15. private memory registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-36 6.1.2.16. hot swap and read-only register control register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-37 6.1.2.17. gpio[7:4], power-up status, and gpio[15:8] registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-3 8
contents pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. vii 6.1.2.18. sticky scratch and extended registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-40 6.1.2.19. address translation control registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-42 6.1.2.20. power management capability registers. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-51 6.1.2.21. hot swap capability registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-54 6.1.2.22. vpd capability registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-55 6.1.2.23. pci-x capability registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-56 6.2. pci configuration register address mapping ? non-transparent mode . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-60 6.2.1. pci configuration register address mapping 00h to 7fh ? non-transparent mode . . . . . . . . . . . . . . 6-60 6.2.2. primary configuration registers ? non-transparent mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-62 6.2.2.1. primary port pci type 0 header registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-62 6.2.2.2. secondary port pci type 0 header registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-72 6.2.3. pci shadow configuration registers ? non-transparent mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-81 6.2.3.1. primary flow-through control registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-82 6.2.3.2. timeout control register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-85 6.2.3.3. miscellaneous options register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-86 6.2.3.4. prefetch control registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-88 6.2.3.5. secondary flow-through control register. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-92 6.2.3.6. buffer and internal arbiter control registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-93 6.2.3.7. test and serial eeprom registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-95 6.2.3.8. timer registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-97 6.2.4. pci configuration register address mapping 80h to ffh, shadow and extended registers ? non-transparent mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-98 6.2.4.1. configuration registers 80h to ffh . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-98 6.2.4.2. cross-bridge configuration access control registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 -100 6.2.4.3. clock control register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-102 6.2.4.4. system error event registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-103 6.2.4.5. gpio[3:0] registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-106 6.2.4.6. hot swap and read-only control register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-107 6.2.4.7. gpio[7:4], power-up status, and gpio[15:8] registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-10 8 6.2.4.8. direct message interrupt registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-110 6.2.4.9. message signaled interrupt registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-112 6.2.4.10. doorbell and miscellaneous interrupt registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-114 6.2.4.11. non-transparent configuration ownership semaphore register . . . . . . . . . . . . . . . . . . . . . . . 6-117 6.2.4.12. sticky scratch and extended registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-118 6.2.4.13. address translation control registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-120 6.2.4.14. chip, diagnostic, and arbiter control registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-127 6.2.4.15. power management capability registers. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-129 6.2.4.16. hot swap capability registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-132 6.2.4.17. vpd capability registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-133 6.2.4.18. pci-x capability registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-134 7. serial eeprom. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-1 7.1. overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-1 7.2. serial eeprom access . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-1 7.3. serial eeprom autoload mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-1 7.4. universal non-transparent mode groups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-2 7.5. serial eeprom data structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-2 7.5.1. serial eeprom address and corresponding pci 6540 register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-3 8. pci bus operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-1 8.1. conventional pci transactions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-1 8.2. single address phase . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-2 8.3. dual address phase . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-2 8.4. device select (devsel#) generation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-2 8.5. data phase . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-2 8.5.1. posted write transactions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-3 8.5.2. memory write and invalidate transactions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-3
contents pci 6540 data book, version 1.0 viii ? 2003 plx technology, inc. all rights reserved. 8.5.3. delayed write transactions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-4 8.5.4. write transaction address boundaries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-5 8.5.5. buffering multiple write transactions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-5 8.5.6. read transactions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-5 8.5.7. prefetchable read transactions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-6 8.5.8. non-prefetchable read transactions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-6 8.5.9. read prefetch address boundaries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-6 8.5.10. delayed read requests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-7 8.5.11. delayed read completion with target . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-7 8.5.12. delayed read completion on initiator bus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-7 8.5.13. configuration transactions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-8 8.5.14. pci 6540 type 0 access . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-8 8.5.15. type 1-to-type 0 translation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-9 8.5.16. type 1-to-type 1 forwarding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-11 8.5.17. special cycles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-11 8.6. transaction termination in conventional pci mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-12 8.6.1. pci 6540-initiated master termination . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-12 8.6.2. master abort received by pci 6540 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-12 8.6.3. target termination received by pci 6540 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-13 8.6.3.1. delayed write target termination response. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-14 8.6.3.2. posted write target termination response. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-15 8.6.3.3. delayed read target termination response . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-16 8.6.4. pci 6540-initiated target termination. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-17 8.6.4.1. target retry . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-17 8.6.4.2. target disconnect. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-18 8.6.4.3. target abort . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-18 9. pci-x bus operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-1 9.1. overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-1 9.2. general bus rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-1 9.2.1. initiator rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-2 9.2.2. target rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-2 9.2.3. bus arbitration rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-3 9.2.4. configuration transaction rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-3 9.2.5. parity error rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-3 9.2.6. bus data width rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-3 9.2.7. split transaction rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-3 9.3. pci-x sequences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-4 9.4. adb and buffer size . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-4 9.5. dependencies between ad and cbe# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-4 9.6. pci-x command encoding. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-5 9.7. attributes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-6 9.8. burst transactions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-8 9.8.1. burst write and split completion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-8 9.8.2. burst read transactions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-8 9.9. dword transactions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-8 9.10. device select timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-9 9.11. wait states and target initial latency . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-9 9.12. split transactions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-10 9.12.1. split completion transaction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-11 9.12.2. immediate completion by the completer. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-11 9.12.3. split completion address . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-11 9.12.4. completer attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-13 9.12.5. accepting split completions requirement. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-14 9.12.6. split completion messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-14
contents pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. ix 9.13. pci-x mode transaction termination. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-17 9.13.1. pci 6540 initiator termination . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-17 9.13.1.1. byte count disconnection or satisfaction. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-17 9.13.1.2. pci 6540 master abort termination . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-17 9.13.2. pci 6540 target termination . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-17 9.13.2.1. pci 6540 disconnects at next adb . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-19 9.13.2.2. pci 6540 retry termination . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-19 9.13.2.3. pci 6540 split response termination . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-19 9.14. pci-x mode bus and data transfer width . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-19 9.15. connecting conventional pci and pci-x interfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-20 9.15.1. conventional pci requester, pci-x completer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-20 9.15.2. pci-x requester, conventional pci completer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-21 10. address decoding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-1 10.1. overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-1 10.2. address ranges . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-1 10.2.1. i/o address decoding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-1 10.2.1.1. i/o base and limit address registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-1 10.3. memory address decoding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-2 10.3.1. memory-mapped i/o base and limit address registers. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-3 10.3.1.1. prefetchable memory base and limit address registers. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10- 3 10.4. isa mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-4 10.5. vga support. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-4 10.5.1. vga mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-4 10.5.2. vga snoop mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-5 10.6. private device support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-5 10.7. address translation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-5 10.7.1. base address registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-5 10.7.2. transparent mode address translation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-6 10.7.2.1. transparent mode address translation method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-6 10.7.2.2. register access . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-6 10.7.2.3. address translation on primary-to-secondary (downstream) transactions . . . . . . . . . . . . . . . . 10-9 10.7.2.4. address translation on secondary-to-primary (upstream) transactions . . . . . . . . . . . . . . . . . 10-10 10.7.2.5. serial eeprom configuration of transparent mode address translation . . . . . . . . . . . . . . . . 10-11 10.7.3. non-transparent mode address translation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-11 11. transaction ordering. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-1 11.1. conventional pci transaction ordering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-1 11.1.1. transactions governed by ordering rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-1 11.1.2. general ordering guidelines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-1 11.1.3. ordering rules. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-2 11.1.4. data synchronization. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-4 11.2. pci-x transaction ordering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-4 11.2.1. relaxed ordering attribute bit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-4 11.2.2. split transactions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-4 12. error handling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-1 12.1. overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-1 12.2. address parity errors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-1 12.3. attribute parity errors (pci-x mode). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-2 12.4. data parity errors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-2 12.4.1. configuration write transactions to configuration space . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-2 12.4.2. read transactions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-2 12.4.3. delayed write transactions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-3 12.4.3.1. conventional pci mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-3 12.4.3.2. pci-x mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-3
contents pci 6540 data book, version 1.0 x ? 2003 plx technology, inc. all rights reserved. 12.4.4. split completion (pci-x mode) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-4 12.4.5. posted write transactions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-4 12.5. data parity error reporting summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-5 12.6. system error (serr#) reporting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-6 13. exclusive access . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13-1 13.1. concurrent locks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13-1 13.2. acquiring exclusive access across pci 6540. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13-1 13.3. ending exclusive access . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13-2 14. pci bus arbitration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-1 14.1. overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-1 14.2. primary pci bus arbitration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-1 14.3. secondary pci bus arbitration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-1 14.3.1. secondary bus arbitration using internal arbiter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-1 14.3.2. rotating priority scheme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-2 14.3.3. fixed priority scheme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-2 14.3.4. secondary bus arbitration using external arbiter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-3 14.4. arbitration bus parking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-3 14.4.1. software controlled pci 64-bit extension signals parking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-3 15. gpio interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15-1 15.1. gpio interface pins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15-1 15.2. gpio control registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15-1 16. supported commands. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-1 16.1. primary interface command set. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-1 16.2. secondary interface command set . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-3 17. bridge behavior . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17-1 17.1. bridge actions for various cycle types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17-1 17.2. abnormal termination (initiated by bridge master) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17-2 17.2.1. master abort . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17-2 17.3. parity and error reporting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17-2 17.3.1. reporting parity errors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17-2 17.4. s_idsel mapping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17-2 17.5. 32- to 64-bit cycle conversion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17-3 18. pci flow-through optimization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18-1 18.1. overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18-1 18.2. precautions when using non-optimized pci master devices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18-1 18.3. posted write flow through . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18-1 18.4. delayed read flow through . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18-2 18.5. read cycle optimization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18-2 18.5.1. primary and secondary initial prefetch count . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18-2 18.5.2. primary and secondary incremental prefetch count. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18-3 18.5.3. primary and secondary maximum prefetch count . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18-3 18.6. read prefetch boundaries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18-3
contents pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. xi 19. fifo architecture. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19-1 19.1. overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19-1 19.2. memory writes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19-2 19.2.1. pci-to-pci-x memory writes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19-2 19.2.2. pci-x-to-pci memory writes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19-2 19.2.3. pci-x-to-pci-x memory writes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19-2 19.3. memory reads . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19-2 19.3.1. pci-to-pci-x memory reads. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19-2 19.3.1.1. prefetched data timeout flushing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19-3 19.3.1.2. setting the prefetch count . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19-4 19.3.1.2.1. pci read from pci-x port . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19-4 19.3.1.2.2. pci read from pci port . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19-4 19.3.2. pci-x-to-pci memory reads. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19-4 19.3.3. pci-x-to-pci-x memory reads . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19-4 19.4. splitting the read fifo into four 1-kb blocks ? transparent mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19-4 20. non-transparent mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20-1 20.1. overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20-1 20.2. using xb_mem input to avoid initial retry latency . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20-2 20.3. interrupts. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20-2 20.3.1. direct message interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20-2 20.3.2. doorbell interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20-2 20.3.3. message signaled interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20-2 20.4. non-transparent mode power-up/pci reset sequence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20-2 21. power management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21-1 21.1. overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21-1 21.2. p_pme# and s_pme# signals. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21-1 22. hot swap. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22-1 22.1. overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22-1 22.2. early power support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22-1 22.3. hot swap signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22-1 22.4. hot swap register control and status . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22-2 22.5. avoiding initially retry or initially not responding requirement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22-2 22.6. device hiding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22-2 22.7. implementing hot swap controller using pci 6540 gpio pins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22-2 22.8. running pci-x in hot swap slots . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22-2 23. vpd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23-1 24. testability/debug . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24-1 24.1. jtag interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24-1 24.1.1. ieee 1149.1 test access port . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24-1 24.1.2. jtag instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24-1 24.1.3. jtag boundary scan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24-2 24.1.4. jtag reset input trst# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24-2 25. electrical specs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25-1 25.1. general electrical specifications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25-1 25.2. pll and clock jitter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25-3 25.3. pci-x/pci signal timing specification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25-4
contents pci 6540 data book, version 1.0 xii ? 2003 plx technology, inc. all rights reserved. 26. mechanical specs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26-1 26.1. mechanical dimensions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26-1 26.2. pinout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26-4 a. using pci 6540. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . a-1 a.1. transparent mode application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . a-2 a.2. non ? transparent mode application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . a-3 a.3. universal bridging application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . a-4 a.3.1. universal mode clk, rst#, req0#, gnt0#, and sysen# signal connections . . . . . . . . . . . . . . . . . a-5 a.4. symmetrical non-transparent application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . a-7 b. pci-x clock and frequency initialization sequence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . b-1 b.1. bus speed and type detection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . b-1 b.1.1. universal transparent mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . b-2 b.1.2. universal non-transparent mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . b-2 b.2. secondary clock outputs. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . b-2 b.3. internal clock divider . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . b-2 b.4. pci-x in universal mode s_clko0 pin use . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . b-2 c. pci 6520bb and pci 6540bb pin comparison . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . c-1 c.1. overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . c-1 d. general information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . d-1 d.1. ordering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . d-1 d.2. united states and international representatives, and distributors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . d-2 d.3. technical support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . d-2 index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . index-1
pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. xiii figures 1-1. pci 6000 series of pci-to-pci bridges . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-2 1-2. pci 6540 pci-x-to-pci-x bridge . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-3 1-3. multiple device expansion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-4 1-4. intelligent adapters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-5 1-5. compactpci universal application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-5 2-1. pci 6540 block diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-1 7-1. serial eeprom data structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-2 9-1. requester attribute bit assignments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-7 9-2. split completion address . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-12 9-3. completer attribute bit assignments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-13 9-4. split completion message attribute bit assignments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-15 14-1. secondary bus arbiter example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-2 19-1. fifo architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19-1 20-1. non-transparent mode power-up/pci reset sequence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20-3 22-1. hot insertion power-up sequence recommendation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22- 1 25-1. pci-x/pci signal timing specification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25-4 26-1. pci 6540 mechanical dimensions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26-1 26-2. pci 6540 physical layout with pinout ? topside view (a1 ? a10 through y1 ? y10) . . . . . . . . . . . . . . 26-4 26-3. pci 6540 physical layout with pinout ? topside view (a11 ? a20 through y11 ? y20) . . . . . . . . . . . . 26-5
pci 6540 data book, version 1.0 xiv ? 2003 plx technology, inc. all rights reserved.
pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. xv tables 2-1. non-transparent mode base address registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-2 3-1. pin type abbreviations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-1 3-2. generic pci bus interface pins that follow pci r2.3 and pci-x r1.0b layout guidelines . . . . . . . . . . . 3-1 3-3. clock pin pull-up/pull-down resistor requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-2 3-4. primary pci/pci-x bus interface pins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-4 3-5. secondary pci/pci-x bus interface pins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-8 3-6. clock-related pins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-13 3-7. reset pins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-16 3-8. compactpci hot swap pins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-17 3-9. jtag/boundary scan pins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-18 3-10. serial eeprom pins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-18 3-11. general purpose i/o pins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-19 3-12. miscellaneous pins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-21 3-13. power and ground pins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-24 3-14. no connect pins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-24 3-15. multiplexed transparent/non-transparent pins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-25 4-1. pci clock division ratios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-2 4-2. pll and clock jitter parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-3 5-1. reset input effect on pci 6540 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-8 5-2. pin state during pwrgd, p_rstin#, s_rstin#, and device hiding . . . . . . . . . . . . . . . . . . . . . . . . . 5-9 6-1. pci configuration register address mapping ? transparent mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-2 6-2. extended register map ? offset from extended register index, transparent mode . . . . . . . . . . . . . . 6-40 6-3. pci configuration shadowed registers (used in transparent address translation) . . . . . . . . . . . . . 6-42 6-4. extended register map (used in transparent address translation) ? offset from extended register index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-45 6-5. pci configuration register address mapping 00h ? 7ch ? non-transparent mode . . . . . . . . . . . . . . 6-61 6-6. pci configuration shadow register map ? pci offset used only when ccntrl[6]=1, non-transparent mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-81 6-7. pci configuration shadow register address mapping 80h ? ffh ? non-transparent mode . . . . . . . 6-98 6-8. extended register map ? offset from extended register index, non-transparent mode . . . . . . . . . . 6-118 6-9. extended register map (used in non-transparent address translation) ? offset from extended register index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .6-120 7-1. serial eeprom address . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-3 8-1. conventional pci transactions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-1 8-2. write transaction forwarding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-2 8-3. write transaction disconnect address boundaries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-5 8-4. read transaction prefetching . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-5 8-5. read prefetch address boundaries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-6 8-6. device number to idsel s_ad pin mapping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-10 8-7. p_serr# assertion requirements in response to master abort on posted write . . . . . . . . . . . . . . . 8-13 8-8. response to delayed write target termination . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-14 8-9. p_serr# assertion requirements in response to delayed write . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-14 8-10. response to posted write target termination . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-15 8-11. p_serr# assertion requirements in response to posted write parity error . . . . . . . . . . . . . . . . . 8-15 8-12. response to delayed read target termination . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .8-16
tables pci 6540 data book, version 1.0 xvi ? 2003 plx technology, inc. all rights reserved. 8-13. p_serr# assertion requirements in response to delayed read . . . . . . . . . . . . . . . . . . . . . . . . . . 8-16 8-14. response to target abort . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-18 9-1. transaction phase definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-2 9-2. byte lanes assignment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-4 9-3. pci-x command encoding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-5 9-4. requester attribute bit definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-7 9-5. devsel# timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-9 9-6. target initial latency . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-10 9-7. split completion address bit definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-12 9-8. completer attribute bit definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-13 9-9. split completion message bit definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-15 9-10. pci 6540 error message indices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-16 9-11. pci 6540 data phase signaling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-18 9-12. conventional pci-to-pci-x command translation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 -20 9-13. pci-x-to-conventional pci command translation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 -21 10-1. extended register map (used in address translation) ? offset from extended register index . . . . . 10-7 10-2. pci configuration shadowed registers (used in address translation) ? transparent mode . . . . . . 10-8 11-1. conventional pci transaction ordering summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .11-3 11-2. transactions ordering and deadlock-avoidance rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 -5 11-3. split transactions ? case-by-case discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-6 12-1. primary interface detected parity error bit status . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-7 12-2. secondary interface detected parity error bit status . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-8 12-3. primary interface data parity error detected bit status . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-9 12-4. secondary interface data parity error detected bit status . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 -10 12-5. p_perr# assertion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-11 12-6. s_perr# assertion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-12 12-7. p_serr# for data parity error assertion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-13 15-1. gpio pin alternate functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15-2 16-1. primary interface supported commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-1 16-2. secondary interface supported commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-3 17-1. bridge actions for various cycle types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17-1 17-2. s_idsel generation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17-2 18-1. reprogramming prefetch registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18-1 19-1. prefetched data timeout flushing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19-3 21-1. states and related actions during power management transitions . . . . . . . . . . . . . . . . . . . . . . . . . 21-1 24-1. pci 6540 jtag idcode value . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24-1 24-2. jtag instructions (ieee standard 1149.1-1990) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24-1 25-1. maximum ratings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25-1 25-2. functional operating range . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25-1 25-3. dc electrical characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25-2 25-4. pll and clock jitter parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25-3 25-5. 133 mhz pci-x and 66 mhz pci signal timing for figure 25-1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25-4 26-1. pci 6540 mechanical dimensions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26-2 a-1. universal mode connection example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .a-6 c-1. part number conversion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .c-1 c-2. pci 6520bb versus pci 6540bb pin assignment comparison . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .c-1 d-1. available package . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .d-1
pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. xvii registers 6-1. (pciidr; pci:00h) pci configuration id . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-4 6-2. (pcicr; pci:04h) primary pci command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-4 6-3. (pcisr; pci:06h) primary pci status. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-5 6-4. (pcirev; pci:08h) pci revision id . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-6 6-5. (pciccr; pci:09h ? 0bh) pci class code. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-6 6-6. (pciclsr; pci:0ch) pci cache line size. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-6 6-7. (pciltr; pci:0dh) primary pci bus latency timer. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-6 6-8. (pcihtr; pci:0eh) pci header type. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-7 6-9. (pcibistr; pci:0fh) pci built-in self-test . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-7 6-10. (pcipbno; pci:18h) pci primary bus number . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-8 6-11. (pcisbno; pci:19h) pci secondary bus number . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-8 6-12. (pcisubno; pci:1ah) pci subordinate bus number . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6- 8 6-13. (pcisltr; pci:1bh) secondary pci bus latency timer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6- 8 6-14. (pciiobar; pci:1ch) i/o base. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-9 6-15. (pciiolmt; pci:1dh) i/o limit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-9 6-16. (pcissr; pci:1eh) secondary pci status . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-10 6-17. (pcimbar; pci:20h) memory base . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-11 6-18. (pcimlmt; pci:22h) memory limit. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-11 6-19. (pcipmbar; pci:24h) prefetchable memory base . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6- 12 6-20. (pcipmlmt; pci:26h) prefetchable memory limit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-12 6-21. (pcipmbaru32; pci:28h) prefetchable memory base upper 32 bits. . . . . . . . . . . . . . . . . . . . . . . 6-13 6-22. (pcipmlmtu32; pci:2ch) prefetchable memory limit upper 32 bits . . . . . . . . . . . . . . . . . . . . . . . 6-13 6-23. (pciiobaru16; pci:30h) i/o base upper 16 bits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-13 6-24. (pciiolmtu16; pci:32h) i/o limit upper 16 bits. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-13 6-25. (cap_ptr; pci:34h) new capability pointer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-14 6-26. (pciipr; pci:3dh) pci interrupt pin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-14 6-27. (bcntrl; pci:3eh) bridge control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-14 6-28. (ccntrl; pci:40h) chip control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-16 6-29. (dcntrl; pci:41h) diagnostic control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-17 6-30. (acntrl; pci:42h) arbiter control. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-17 6-31. (pftcr; pci:44h) primary flow-through control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-18 6-32. (tocntrl; pci:45h) timeout control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-19 6-33. (mscopt; pci:46h) miscellaneous options. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-20 6-34. (pitlpcnt; pci:48h) primary initial prefetch count . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-22 6-35. (sitlpcnt; pci:49h) secondary initial prefetch count . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 -23 6-36. (pincpcnt; pci:4ah) primary incremental prefetch count . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-23 6-37. (sincpcnt; pci:4bh) secondary incremental prefetch count . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-24 6-38. (pmaxpcnt; pci:4ch) primary maximum prefetch count . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-25 6-39. (smaxpcnt; pci:4dh) secondary maximum prefetch count . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-25 6-40. (sftcr; pci:4eh) secondary flow-through control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6- 26 6-41. (bufcr; pci:4fh) buffer control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-27 6-42. (iacntrl; pci:50h) internal arbiter control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-28 6-43. (test; pci:52h) test . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-29 6-44. (eepcntrl; pci:54h) serial eeprom control. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-29
registers pci 6540 data book, version 1.0 xviii ? 2003 plx technology, inc. all rights reserved. 6-45. (eepaddr; pci:55h) serial eeprom address . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 -30 6-46. (eepdata; pci:56h) serial eeprom data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-30 6-47. (tmrcntrl; pci:61h) timer control. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-31 6-48. (tmrcnt; pci:62h) timer counter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-31 6-49. (pserred; pci:64h) p_serr# event disable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 -32 6-50. (gpiood[3:0]; pci:65h) gpio[3:0] output data. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-33 6-51. (gpiooe[3:0]; pci:66h) gpio[3:0] output enable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-33 6-52. (gpioid[3:0]; pci:67h) gpio[3:0] input data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-33 6-53. (clkcntrl; pci:68h) clock control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-34 6-54. (pserrsr; pci:6ah) p_serr# status . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-34 6-55. (clkrun; pci:6bh) clock run. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-35 6-56. (pvtmbar; pci:6ch) private memory base . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-36 6-57. (pvtmlmt; pci:6eh) private memory limit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-36 6-58. (pvtmbaru32; pci:70h) private memory base upper 32 bits . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-36 6-59. (pvtmlmtu32; pci:74h) private memory limit upper 32 bits . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-36 6-60. (hssrrc; pci:9ch) hot swap switch and ror control. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-37 6-61. (gpiood[7:4]; pci:9dh) gpio[7:4] output data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-38 6-62. (gpiooe[7:4]; pci:9eh) gpio[7:4] output enable. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-38 6-63. (gpioid[7:4]; pci:9fh) gpio[7:4] input data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-38 6-64. (pwrupsr; pci:a0h) power-up status . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-39 6-65. (gpiood[15:8]; pci:a1h) gpio[15:8] output data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-39 6-66. (gpiooe[15:8]; pci:a2h) gpio[15:8] output enable. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 -39 6-67. (gpioid[15:8]; pci:a3h) gpio[15:8] input data. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-39 6-68. (scratch x ; ext:00h ? 07h) 32-bit sticky scratch. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-41 6-69. (extridx; pci:d3h) extended register index. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-41 6-70. (extrdata; pci:d4h) extended register data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-41 6-71. (pcibar0; primary pci:10h) pci downstream i/o bar 0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-43 6-72. (pcibar1; primary pci:14h) pci downstream memory bar 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-43 6-73. (pcibar2; primary pci:18h) pci downstream memory bar 2 or downstream memory bar 1 upper 32 bits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-43 6-74. (pciubar0; primary pci:10h) pci upstream i/o or memory bar 0 . . . . . . . . . . . . . . . . . . . . . . . . 6-44 6-75. (pciubar1; primary pci:14h) pci upstream memory bar 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-44 6-76. (pciubar2; primary pci:18h) pci upstream memory bar 2 or upstream memory bar 1 upper 32 bits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-45 6-77. (upstnbar0; ext:08h) upstream bar 0 translation address . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-46 6-78. (upstnbar1; ext:09h) upstream bar 1 translation address . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-46 6-79. (upstnbar2; ext:0ah) upstream bar 2 translation address or upstream bar 1 upper 32 bits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-46 6-80. (upsbar0msk; ext:0bh) upstream bar 0 translation mask. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-47 6-81. (upsbar1msk; ext:0bh) upstream bar 1 translation mask. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-47 6-82. (upsbar2msk; ext:0bh) upstream bar 2 translation mask. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-47 6-83. (upstne; ext:0bh) upstream translation enable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-48 6-84. (dwntnbar0; ext:0ch) downstream bar 0 translation address . . . . . . . . . . . . . . . . . . . . . . . . . 6-48 6-85. (dwntnbar1; ext:0dh) downstream bar 1 translation address . . . . . . . . . . . . . . . . . . . . . . . . . 6-48 6-86. (dwntnbar2; ext:0eh) downstream bar 2 or downstream memory bar 1 upper 32 bits translation address . . . . . . . . . . . . . . . . . . . . . . . . . 6-48 6-87. (dwnbar0msk; ext:0fh) downstream bar 0 translation mask . . . . . . . . . . . . . . . . . . . . . . . . . . 6-49
registers pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. xix 6-88. (dwnbar1msk; ext:0fh) downstream bar 1 translation mask . . . . . . . . . . . . . . . . . . . . . . . . . . 6-49 6-89. (dwnbar2msk; ext:0fh) downstream bar 2 translation mask . . . . . . . . . . . . . . . . . . . . . . . . . . 6-50 6-90. (dwntne; ext:0fh) downstream translation enable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-5 0 6-91. (pmcapid; pci:dch) power management capability id . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-51 6-92. (pmnext; pci:ddh) power management next capability pointer . . . . . . . . . . . . . . . . . . . . . . . . . 6-51 6-93. (pmc; pci:deh) power management capabilities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-52 6-94. (pmcsr; pci:e0h) power management control/status . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-53 6-95. (pmcsr_bse; pci:e2h) pmcsr bridge supports extensions . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-53 6-96. (pmcdata; pci:e3h) power management data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6- 53 6-97. (hs_cntl; pci:e4h) hot swap control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-54 6-98. (hs_next; pci:e5h) hot swap next capability pointer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-5 4 6-99. (hs_csr; pci:e6h) hot swap control/status . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-54 6-100. (pvpdid; pci:e8h) vital product data capability id . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-55 6-101. (pvpd_next; pci:e9h) vital product data next capability pointer . . . . . . . . . . . . . . . . . . . . . . . 6-55 6-102. (pvpdad; pci:eah) vital product data address . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-55 6-103. (pvpdata; pci:ech) vpd data. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-55 6-104. (pcixcapid; pci:f0h) pci-x capability id . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-56 6-105. (pcix_next; pci:f1h) pci-x next capability pointer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6- 56 6-106. (pcixssr; pci:f2h) pci-x secondary status . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-56 6-107. (pcixbsr; pci:f4h) pci-x bridge status . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-58 6-108. (pcixupstr; pci:f8h) pci-x upstream split transaction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-59 6-109. (pcixdnstr; pci:fch) pci-x downstream split transaction . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-59 6-110. (pciidr; primary pci:00h, secondary pci:40h) pci configuration id. . . . . . . . . . . . . . . . . . . . . . 6-62 6-111. (pcicr; primary pci:04h, secondary pci:44h) primary pci command . . . . . . . . . . . . . . . . . . . . 6-63 6-112. (pcisr; primary pci:06h, secondary pci:46h) primary pci status . . . . . . . . . . . . . . . . . . . . . . . 6-64 6-113. (pcirev; primary pci:08h, secondary pci:48h) pci revision id . . . . . . . . . . . . . . . . . . . . . . . . . 6-65 6-114. (pciccr; primary pci:09h ? 0bh, secondary pci:49h ? 4bh) pci class code . . . . . . . . . . . . . . 6-65 6-115. (pciclsr; primary pci:0ch, secondary pci:4ch) primary pci cache line size . . . . . . . . . . . . 6-66 6-116. (pciltr; primary pci:0dh, secondary pci:4dh) primary pci bus latency timer . . . . . . . . . . . . 6-66 6-117. (pcihtr; primary pci:0eh, secondary pci:4eh) pci header type . . . . . . . . . . . . . . . . . . . . . . . 6-66 6-118. (pcibistr; primary pci:0fh, secondary pci:4fh) pci built-in self-test . . . . . . . . . . . . . . . . . . . 6-66 6-119. (pcibar0; primary pci:10h, secondary pci:50h) pci downstream i/o or memory bar 0 . . . . . 6-67 6-120. (pcibar1; primary pci:14h, secondary pci:54h) pci downstream memory bar 1 . . . . . . . . . . 6-68 6-121. (pcibar2; primary pci:18h, secondary pci:58h) pci downstream memory bar 2 or downstream memory bar 1 upper 32 bits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-69 6-122. (pcisvid; primary pci:2ch, secondary pci:6ch) pci subsystem vendor id . . . . . . . . . . . . . . . 6-70 6-123. (pcisid; primary pci:2eh, secondary pci:6eh) pci subsystem id . . . . . . . . . . . . . . . . . . . . . . . 6-70 6-124. (cap_ptr; primary pci:34h, secondary pci:74h) new capability pointer. . . . . . . . . . . . . . . . . . 6-70 6-125. (pcipilr; pci:3ch, secondary pci:7ch) primary pci interrupt line . . . . . . . . . . . . . . . . . . . . . . 6-71 6-126. (pcipipr; pci:3dh, secondary pci:7dh) primary pci interrupt pin . . . . . . . . . . . . . . . . . . . . . . . 6-71 6-127. (pcipmgr; pci:3eh, secondary pci:7eh) primary pci minimum grant. . . . . . . . . . . . . . . . . . . . 6-71 6-128. (pcipmlr; pci:3fh, secondary pci:7fh) primary pci maximum latency . . . . . . . . . . . . . . . . . . 6-71 6-129. (pciidr; primary pci:40h, secondary pci:00h) pci configuration id. . . . . . . . . . . . . . . . . . . . . . 6-72 6-130. (pciscr; primary pci:44h, secondary pci:04h) secondary pci command . . . . . . . . . . . . . . . . 6-72 6-131. (pcissr; primary pci:46h, secondary pci:06h) secondary pci status . . . . . . . . . . . . . . . . . . . . 6-73 6-132. (pcirev; primary pci:48h, secondary pci:08h) pci revision id . . . . . . . . . . . . . . . . . . . . . . . . . 6-74
registers pci 6540 data book, version 1.0 xx ? 2003 plx technology, inc. all rights reserved. 6-133. (pciccr; primary pci:49h ? 4bh, secondary pci:09h ? 0bh) pci class code . . . . . . . . . . . . . . 6-74 6-134. (pcisclsr; primary pci:4ch, secondary pci:0ch) secondary pci cache line size . . . . . . . . . 6-75 6-135. (pcisltr; primary pci:4dh, secondary pci:0dh) secondary pci bus latency timer . . . . . . . . 6-75 6-136. (pcihtr; primary pci:4eh, secondary pci:0eh) pci header type . . . . . . . . . . . . . . . . . . . . . . . 6-75 6-137. (pcibistr; primary pci:4fh, secondary pci:0fh) pci built-in self-test . . . . . . . . . . . . . . . . . . . 6-75 6-138. (pciubar0; primary pci:50h, secondary pci:10h) pci upstream i/o or memory bar 0 . . . . . . 6-76 6-139. (pciubar1; primary pci:54h, secondary pci:14h) pci upstream memory bar 1 . . . . . . . . . . . 6-77 6-140. (pciubar2; primary pci:58h, secondary pci:18h) pci upstream memory bar 2 or upstream memory bar 1 upper 32 bits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-78 6-141. (pcisvid; primary pci:6ch, secondary pci:2ch) pci subsystem vendor id . . . . . . . . . . . . . . . 6-79 6-142. (pcisid; primary pci:6eh, secondary pci:2eh) pci subsystem id . . . . . . . . . . . . . . . . . . . . . . . 6-79 6-143. (cap_ptr; primary pci:74h, secondary pci:34h) new capability pointer. . . . . . . . . . . . . . . . . . 6-79 6-144. (pcisilr; pci:7ch, secondary pci:3ch) secondary pci interrupt line . . . . . . . . . . . . . . . . . . . . 6-80 6-145. (pcisipr; pci:7dh, secondary pci:3dh) secondary pci interrupt pin. . . . . . . . . . . . . . . . . . . . . 6-80 6-146. (pcismgr; pci:7eh, secondary pci:3eh) secondary pci minimum grant . . . . . . . . . . . . . . . . . 6-80 6-147. (pcismlr; pci:7fh, secondary pci:3fh) secondary pci maximum latency . . . . . . . . . . . . . . . 6-80 6-148. (bcntrl; pci:42h) bridge control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-82 6-149. (pftcr; pci:44h) primary flow-through control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-84 6-150. (tocntrl; pci:45h) timeout control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-85 6-151. (mscopt; pci:46h) miscellaneous options. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-86 6-152. (pitlpcnt; pci:48h) primary initial prefetch count . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-88 6-153. (sitlpcnt; pci:49h) secondary initial prefetch count . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6- 89 6-154. (pincpcnt; pci:4ah) primary incremental prefetch count . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-89 6-155. (sincpcnt; pci:4bh) secondary incremental prefetch count . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-90 6-156. (pmaxpcnt; pci:4ch) primary maximum prefetch count . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-91 6-157. (smaxpcnt; pci:4dh) secondary maximum prefetch count . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-91 6-158. (sftcr; pci:4eh) secondary flow-through control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-9 2 6-159. (bufcr; pci:4fh) buffer control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-93 6-160. (iacntrl; pci:50h) internal arbiter control. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-94 6-161. (test; pci:52h) test . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-95 6-162. (eepcntrl; pci:54h) serial eeprom control. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 -95 6-163. (eepaddr; pci:55h) serial eeprom address . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6- 96 6-164. (eepdata; pci:56h) serial eeprom data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-96 6-165. (tmrcntrl; pci:61h) timer control. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-97 6-166. (tmrcnt; pci:62h) timer counter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-97 6-167. (xbdwnca; pci:80h) cross-bridge downstream configuration address . . . . . . . . . . . . . . . . . . 6-100 6-168. (xbdwncd; pci:84h) cross-bridge downstream configuration data. . . . . . . . . . . . . . . . . . . . . 6-100 6-169. (xbupsca; pci:88h) cross-bridge upstream configuration address . . . . . . . . . . . . . . . . . . . . . 6-100 6-170. (xbupscd; pci:8ch) cross-bridge upstream configuration data . . . . . . . . . . . . . . . . . . . . . . . 6-100 6-171. (xbdwncos; pci:90h) cross-bridge downstream configuration ownership semaphore. . . . . 6-101 6-172. (xbupscos; pci:91h) cross-bridge upstream configuration ownership semaphore. . . . . . . . 6-101 6-173. (xbcos; pci:92h) cross-bridge configuration ownership status . . . . . . . . . . . . . . . . . . . . . . . . 6-101 6-174. (clkcntrl; pci:94h) clock control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-102 6-175. (pserred; pci:96h) p_serr# event disable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-10 3 6-176. (sserred; pci:97h) s_serr# event disable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-10 4 6-177. (psserrsr; pci:98h) p_serr# and s_serr# status. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-105
registers pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. xxi 6-178. (gpiood[3:0]; pci:99h) gpio[3:0] output data. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-106 6-179. (gpiooe[3:0]; pci:9ah) gpio[3:0] output enable. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6- 106 6-180. (gpioid[3:0]; pci:9bh) gpio[3:0] input data. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-106 6-181. (hssrrc; pci:9ch) hot swap switch and ror control. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-107 6-182. (gpiood[7:4]; pci:9dh) gpio[7:4] output data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 -108 6-183. (gpiooe[7:4]; pci:9eh) gpio[7:4] output enable. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6- 108 6-184. (gpioid[7:4]; pci:9fh) gpio[7:4] input data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-108 6-185. (pwrupsr; pci:a0h) power-up status . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-109 6-186. (gpiood[15:8]; pci:a1h) gpio[15:8] output data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-1 09 6-187. (gpiooe[15:8]; pci:a2h) gpio[15:8] output enable. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-10 9 6-188. (gpioid[15:8]; pci:a3h) gpio[15:8] input data. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-109 6-189. (upsmsg0; pci:a4h) upstream message 0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6- 110 6-190. (upsmsg1; pci:a5h) upstream message 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6- 110 6-191. (upsmsg2; pci:a6h) upstream message 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6- 110 6-192. (upsmsg3; pci:a7h) upstream message 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6- 110 6-193. (dwnmsg0; pci:a8h) downstream message 0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-111 6-194. (dwnmsg1; pci:a9h) downstream message 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-111 6-195. (dwnmsg2; pci:aah) downstream message 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-111 6-196. (dwnmsg3; pci:abh) downstream message 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-111 6-197. (msicapid; pci:ach) message signaled interrupts capability id. . . . . . . . . . . . . . . . . . . . . . . . 6-112 6-198. (msinext; pci:adh) message signaled interrupts next capability pointer . . . . . . . . . . . . . . . . 6-112 6-199. (msic; pci:aeh) message signaled interrupts control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-11 2 6-200. (msiaddr; pci:b0h) message signaled interrupts address . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-113 6-201. (msiuaddr; pci:b4h) message signaled interrupts upper address . . . . . . . . . . . . . . . . . . . . . 6-113 6-202. (msidata; pci:b8h) message signaled interrupts data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-113 6-203. (dwndbie; pci:c0h) downstream doorbell interrupt enable . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-114 6-204. (dwndbir; pci:c2h) downstream doorbell interrupt request . . . . . . . . . . . . . . . . . . . . . . . . . . 6-114 6-205. (upsdbie; pci:c4h) upstream doorbell interrupt enable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-114 6-206. (upsdbir; pci:c6h) upstream doorbell interrupt request . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-114 6-207. (dwndbis; pci:c8h) downstream doorbell interrupt status. . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-115 6-208. (dwnintsr; pci:cah) downstream interrupt status . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-115 6-209. (upsinte; pci:cbh) upstream interrupt enable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 -115 6-210. (upsdbis; pci:cch) upstream doorbell interrupt status . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-116 6-211. (upsintsr; pci:ceh) upstream interrupt status . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6- 116 6-212. (dwninte; pci:cfh) downstream interrupt enable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-116 6-213. (ntcos; pci:d2h) non-transparent configuration ownership semaphore . . . . . . . . . . . . . . . . 6-117 6-214. (scratch x ; ext:00h ? 07h) 32-bit sticky scratch. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-119 6-215. (extridx; pci:d3h) extended register index. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-119 6-216. (extrdata; pci:d4h) extended register data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-1 19 6-217. (upstnbar0; ext:08h) upstream bar 0 translation address . . . . . . . . . . . . . . . . . . . . . . . . . . 6-121 6-218. (upstnbar1; ext:09h) upstream bar 1 translation address . . . . . . . . . . . . . . . . . . . . . . . . . . 6-121 6-219. (upstnbar2; ext:0ah) upstream bar 2 translation address or upstream bar 1 upper 32 bits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-121 6-220. (upsbar0msk; ext:0bh) upstream bar 0 translation mask. . . . . . . . . . . . . . . . . . . . . . . . . . . 6-122 6-221. (upsbar1msk; ext:0bh) upstream bar 1 translation mask. . . . . . . . . . . . . . . . . . . . . . . . . . . 6-122 6-222. (upsbar2msk; ext:0bh) upstream bar 2 translation mask. . . . . . . . . . . . . . . . . . . . . . . . . . . 6-122
registers pci 6540 data book, version 1.0 xxii ? 2003 plx technology, inc. all rights reserved. 6-223. (upstne; ext:0bh) upstream translation enable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6- 123 6-224. (dwntnbar0; ext:0ch) downstream bar 0 translation address . . . . . . . . . . . . . . . . . . . . . . . 6-124 6-225. (dwntnbar1; ext:0dh) downstream bar 1 translation address . . . . . . . . . . . . . . . . . . . . . . . 6-124 6-226. (dwntnbar2; ext:0eh) downstream bar 2 or downstream memory bar 1 upper 32 bits translation address . . . . . . . . . . . . . . . . . . . . . . . . 6-124 6-227. (dwnbar0msk; ext:0fh) downstream bar 0 translation mask . . . . . . . . . . . . . . . . . . . . . . . . 6-125 6-228. (dwnbar1msk; ext:0fh) downstream bar 1 translation mask . . . . . . . . . . . . . . . . . . . . . . . . 6-125 6-229. (dwnbar2msk; ext:0fh) downstream bar 2 translation mask . . . . . . . . . . . . . . . . . . . . . . . . 6-125 6-230. (dwntne; ext:0fh) downstream translation enable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-126 6-231. (ccntrl; pci:d8h) chip control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-127 6-232. (dcntrl; pci:d9h) diagnostic control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-128 6-233. (acntrl; pci:dah) arbiter control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-128 6-234. (pmcapid; pci:dch) power management capability id . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-129 6-235. (pmnext; pci:ddh) power management next capability pointer . . . . . . . . . . . . . . . . . . . . . . . 6-129 6-236. (pmc; pci:deh) power management capabilities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-1 30 6-237. (pmcsr; pci:e0h) power management control/status . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-131 6-238. (pmcsr_bse; pci:e2h) pmcsr bridge supports extensions . . . . . . . . . . . . . . . . . . . . . . . . . . 6-131 6-239. (pmcdata; pci:e3h) power management data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-131 6-240. (hs_cntl; pci:e4h) hot swap control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-132 6-241. (hs_next; pci:e5h) hot swap next capability pointer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-132 6-242. (hs_csr; pci:e6h) hot swap control/status . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-132 6-243. (pvpdid; pci:e8h) vital product data capability id . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 -133 6-244. (pvpd_next; pci:e9h) vital product data next capability pointer . . . . . . . . . . . . . . . . . . . . . . 6-133 6-245. (pvpdad; pci:eah) vital product data address . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 -133 6-246. (pvpdata; pci:ech) vpd data. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-133 6-247. (pcixcapid; pci:f0h) pci-x capability id . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-134 6-248. (pcix_next; pci:f1h) pci-x next capability pointer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-13 4 6-249. (pcix_cmd; pci:f2h) pci-x command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-134 6-250. (pcixbsr; pci:f4h) pci-x bridge status . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-135 6-251. (pcixupstr; pci:f8h) pci-x upstream split transaction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-136 6-252. (pcixdnstr; pci:fch) pci-x downstream split transaction . . . . . . . . . . . . . . . . . . . . . . . . . . 6-136
pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. xxiii preface the information contained in this document is subject to change without notice. although an effort has been made maintain accurate information, there may be misleading or even incorrect statements made herein. supplemental documentation the following is a list of documentation to provide further details:  pci 6520bb and pci 6540bb pin comparison, application note, version 1.1 , august 5, 2003 plx technology, inc. 870 maude avenue sunnyvale, california 94085 usa tel: 408 774-9060 or 800 759-3735, fax: 408 774-2169, http://www.plxtech.com/  pci local bus specification, revision 2.1 , june 1, 1995 pci special interest group (pci-sig) 5440 sw westgate drive #217, portland, or 97221 usa tel: 503 291-2569, fax: 503 297-1090, http://www.pcisig.com  pci local bus specification, revision 2.3 pci special interest group (pci-sig) 5440 sw westgate drive #217, portland, or 97221 usa tel: 503 291-2569, fax: 503 297-1090, http://www.pcisig.com  pci to pci bridge architecture specification , revision 1.1 pci special interest group (pci-sig) 5440 sw westgate drive #217, portland, or 97221 usa tel: 503 291-2569, fax: 503 297-1090, http://www.pcisig.com  pci bus power management interface specification, revision 1.1 , december 18, 1998 pci special interest group (pci-sig) 5440 sw westgate drive #217, portland, or 97221 usa tel: 503 291-2569, fax: 503 297-1090, http://www.pcisig.com  picmg 2.1, r2.0, compactpci hot swap specification, january 2001 pci industrial computer manufacturers group (picmg) c/o virtual inc., 401 edgewater place, suite 500, wakefield, ma 01880, usa tel: 781 246-9318, fax: 781 224-1239, http://www.picmg.org  pci-x addendum to pci local bus specification, revision 1.0b pci special interest group (pci-sig) 5440 sw westgate drive #217, portland, or 97221 usa tel: 503 291-2569, fax: 503 297-1090, http://www.pcisig.com  ieee standard 1149.1-1990, ieee standard test access port and boundary-scan architecture , 1990 the institute of electrical and electronics engineers, inc. 445 hoes lane, po box 1331, piscataway, nj 08855-1331, usa tel: 800 678-4333 (domestic only) or 732 981-0060, fax: 732 981-1721, http://www.ieee.org
preface pci 6540 data book, version 1.0 xxiv ? 2003 plx technology, inc. all rights reserved. note: in this data book, shortened titles are provided to the previously listed documents. the following table lists these abbreviati ons. data assignment conventions revision history supplemental documentation abbreviations abbreviation document pci r2.1 pci local bus specification, revision 2.1 pci r2.3 pci local bus specification, revision 2.3 p-to-p bridge r1.1 pci to pci bridge architecture specification, revision 1.1 pci power mgmt. r1.1 pci bus power management interface specification , revision 1.1 picmg 2.1 r2.0 picmg 2.1 r2.0 compactpci hot swap specification pci-x r1.0b pci-x addendum to pci local bus specification, revision 1.0b ieee standard 1149.1-1990 ieee standard test access port and boundary-scan architecture data assignment conventions data width pci 6540 convention 1 byte (8 bits) byte 2 bytes (16 bits) word 4 bytes (32 bits) dword/dword 8 bytes (64 bits) qword/qword date version comments 11/03 1.0 production release, silicon revision bb.
dual-mode universal pci-x-to-pci-x bridge november 2003 high-performance, asynchronous 64-bit, 133 mhz bridge for version 1.0 server, storage, communications, and embedded-control applications pci 6540 pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. xxv feature summary feature summary the plx pci 6540 pci-x-to-pci-x bridge is a universal device capable of 64-bit, 133 mhz operation. the device is designed for high-performance and high-availability uses such as pci-x slot expansion, pci-x-to-pci conversion, multi-device attachment, frequency conversion, high-availability hot swap, and universal system-to- system bridging. the pci 6540 has sophisticated buffer management and buffer configuration options designed to provide customizable performance for efficient throughput, and is the only pci-x-to-pci-x bridge that offers true non-transparent operation.  pci-x rev 1.0-compliant at 64-bits, 133 mhz  backward compatible with pci r2.3  support for input-pin-enforced pci-x operation  5v tolerant i/o  asynchronous design for primary and secondary ports  33 to 133 mhz operation  either port may run at the higher frequency  16 gpio pins with output control  eight pins have power-up status latch capabilities  picmg 2.1 r2.0 with pi = 1  support for device hiding  primary port can be set to pci-x protocol, without requiring the normal reset initialization sequence  flow-through, zero wait state bursts of up to 4 kb  optimal for large volume data transfer  supports up to four simultaneous posted writes and delayed transactions in each direction  supports up to four simultaneous split transactions in each direction in pci-x mode  optional segmented 1-kb buffer for each of the four read fifo entries  10-kb buffers  1-kb downstream posted write buffer  1-kb upstream posted write buffer  4-kb downstream read data buffer  4-kb upstream read data buffer  configurable prefetch size of up to 2 kb  ideal for pci-to-pci-x transfers  buffer management allowing timed flush of fifo  5 secondary clock outputs  pin controlled enable  individual maskable control  supports downstream and upstream lock  supports secondary port pci/pci-x private devices and private memory space  reference clock input option  primary and secondary port pci-x frequency detection  serial eeprom loadable  programmable pci read-only register configurations  programmable arbitration for eight bus masters on the secondary interface  optional external arbiter  pci mobile design guide and power management d 3cold wakeup capable  pme# support  enhanced address decoding  supports 32-bit i/o address range  32-bit memory-mapped i/o address range  isa-aware mode for legacy support in the first 64 kb of i/o address range  vga addressing and palette snooping support
pci 6540 data book, version 1.0 xxvi ? 2003 plx technology, inc. all rights reserved. feature summary  ieee standard 1149.1-1990 jtag interface  low power 0.25 cmos process  industry standard 27 x 27 mm 380-pin (ball) pbga package pci 6540 non-transparent and universal mode features  programmable transparent , non-transparent , or universal mode operation  jumperless switching between system slot and peripheral slot applications in a compactpci system (universal mode)  address remapping to secondary pci-x bus  pin-selectable primary or secondary port system boot-up priority  optional default 16 mb memory space capability, to avoid initially retry or initially not respond requirement  semaphore-backed cross-bridge configuration space access  powerful multi-source (direct encoded, doorbell, pci-x reset, external pin) programmable interrupt pins for primary and secondary ports  behaves as a memory-mapped pci-x device  primary and secondary port controllable gpios  available primary and secondary power status inputs for port power detection  power good input for full chip reset  independent primary and secondary port reset inputs  configurable primary and secondary reset outputs  sticky scratch registers, immune to pci-x resets pci 6540 block diagram primary bus secondary bus 4-entry write buffer (1 kb) 4-entry read buffer (4 kb) 4-entry read buffer (4 kb) 4-entry write buffer (1 kb) address translation address translation gpio serial eeprom clock buffers pci arbiter hot swap system detect
pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 1-1 1?introduction 1 introduction this section provides information about plx technology, inc., and its products, the pci 6000 bridge series, and pci 6540 features and applications. 1.1 company and product information plx technology, inc., is the leading supplier of standard interconnect silicon to the storage, communications, server, and embedded-control industries. plx ? s comprehensive i/o interconnect product offering ranges from i/o accelerators, pci-to-pci bridges, pci-x-to-pci-x bridges, and hypertransport ? bridges to the plx pci express-based family of switches and bridges currently under development. in addition to a broad product offering, plx provides development tool support through software development kits (sdks), hardware rapid development kits (rdks), and third-party tool support through the plx partner program. our complete tool offering, combined with leadership plx silicon, enables system designers to maximize system throughput, lower development costs, minimize system design risk, and provide faster time to market. the plx commitment to meeting customer requirements extends beyond complete product solutions, and includes active participation in industry associations. plx contributes to the key standard-setting bodies in our industry, including pci-sig ? (the special interest group responsible for the creation and release of all pci specifications), picmg ? (the organization responsible for compactpci and the new advancedtca ? standard for fabrics), hypertransport ? consortium, and blade systems alliance (blades). furthermore, plx is a key developer for pci express technology and a member of the intel developers network for pci express technology. founded in 1986, plx has been developing products based on the pci industry standard since 1994. plx is publicly traded (nasdaq:plxt) and headquartered in sunnyvale, ca, usa, with other domestic offices in utah and southern california. plx european operations are based in the united kingdom and asian operations are based in china and japan.
section 1 introduction pci 6000 bridge series pci 6540 data book, version 1.0 1-2 ? 2003 plx technology, inc. all rights reserved. 1.2 pci 6000 bridge series the plx pci 6000 series offers the industry ? s broadest set of pci-to-pci and pci-x-to-pci-x bridges. these bridges allow additional devices to be attached to the pci bus, and provide the ability to include intelligent adapters on a pci bus. in addition, these bridges allow pci buses of different speeds to be part of the same subsystem. the plx pci and pci-x family of interconnect products include both pci-to-pci and pci-x-to-pci-x bridging devices, offering system designers innovative features along with improved i/o performance. the plx pci 6000 series of pci-to-pci bridging products provide support for the entire range of current pci bus data widths and speeds, including 32-bit 33 mhz, 64-bit 66 mhz, and the latest 64-bit 133 mhz pci-x variety of the standard. the pci 6000 product line is distinguished by featuring the widest range of options, lowest power, highest performance, and smallest footprints in the industry. the product line includes features such as the ability to clock the pci bus segments asynchronously to one another, and operate the component in transparent or true non-transparent mode. universal mode is crucial when the same module is designed to be used as a system host or peripheral. the entire line of plx bridging products are designed to provide high-performance interconnect for servers, storage, telecommunications, networking, and embedded applications. like all plx interconnect chips, the pci 6000 series products are supported by plx comprehensive reference design tools and the industry-recognized plx support infrastructure. figure 1-1. pci 6000 series of pci-to-pci bridges 32-bit 33 mhz pqfp 133 mhz pci-x 33 mhz pci 66 mhz pci 32-bit 33 mhz tinybga a s y n c h r o n o u s pci 6140 pci 6152 pci 6152 32-bit 66 mhz tinybga 32-bit 66 mhz asynchronous pci 6154 pci 6254 pci 6520 pci 6150 pci 6540 64-bit 66 mhz transparent 64-bit 66 mhz non- transparent transparent non- transparent
section 1 pci 6000 bridge series introduction pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 1-3 1 ? introduction 1.2.1 pci 6540 the pci 6540 is the most powerful pci-x-to-pci-x bridging device offered in the industry. as illustrated in figure 1-2, the pci 6540 is a two-port device providing full asynchronous operation between the primary and secondary ports. the secondary bus may be run faster than the primary bus, and vice versa. the pci 6540 is a dual-mode device, providing both transparent and non-transparent operation in a single product, and can be used in universal mode, providing the ability to operate the product in a compactpci system slot or peripheral slot. pci-x is the next generation of the industry-standard pci bus. this standard provides complete backward compatibility in terms of electrical characteristics, software, and form factor, and when used in pci-x mode, the maximum transfer speed increases to 133 mhz, allowing a maximum bursting bandwidth of 1 gbps. alternatively, pci-x allows greater electrical expansion of the pci bus at 66 mhz by registering data transfers. a transparent pci bridge is meant to provide electrical isolation to the system. it allows additional loads (and devices) to be attached to the bus, and can also be used to operate dissimilar pci bus data widths and speeds on the same system. for example , a transparent bridge can allow several 64-bit, 66 mhz pci devices to attach to a 133 mhz pci-x slot. a non-transparent pci bridge offers address isolation in addition to electrical isolation. devices on both sides of the bridge retain their own independent memory space, and data from one side of the bridge is forwarded to the other side, using an address translation mechanism. a non-transparent bridge is used when there is more than one intelligent entity ( such as multiple processors) in the system. it is a common mechanism used for creating intelligent i/o cards and multi-processor systems. an asynchronous bridge provides the ability to run each port from a completely independent clock. this allows the system designer to provide the highest performance on each side of the bridge, without forcing one side to slow down based on a slower device on the other side of the bridge. the advantage of an asynchronous bridge is that the two clock domains can be arbitrarily different, and not based on a synchronous version of the other clock. figure 1-2. pci 6540 pci-x-to-pci-x bridge pci 6540 asynchronous transparent or non-transparent universal mode pci power management 8 bus master support 16 gpios hot swap support serial eeprom support 5 external clock buffers secondary pci-x bus primary pci-x bus
section 1 introduction feature description pci 6540 data book, version 1.0 1-4 ? 2003 plx technology, inc. all rights reserved. 1.3 feature description the pci 6540 provides a range of added-value features to system designers, including:  two pci-x ports, each capable of running at the full 64-bit, 133 mhz speed  backward compatible to pci r2.3  asynchronous primary and secondary ports  ports can operate from 33 mhz to 133 mhz  either port can operate slower or faster than the other port  transparent or non-transparent mode operation  universal mode operation  allows the same card to operate both as a system or peripheral card in a compactpci chassis  5v tolerant i/o  programmable prefetch  programmable flow through  zero wait state burst  10 kb data fifo  five secondary clock outputs  reference clock input for frequency detection  pci power management support  arbitration support for eight secondary bus masters  serial eeprom for configuration  16 general purpose i/o pins  hot swap ready  vital product data (vpd)  jtag boundary scan 1.4 applications 1.4.1 multiple device expansion figure 1-3 illustrates the pci 6540 used to provide electrical isolation to the pci-x bus. this is necessary because pci-x slots have a restriction on the number of loads that can be accommodated. the devices on the secondary port can be pci or pci-x , and the bus can operate at a range of frequencies and bus data widths. this configuration is a common mechanism for providing multiple, high-speed ethernet or fibre channel connections on a single pci-x card. figure 1-3. multiple device expansion pci-x bus pci 6540 pci or pci-x device pci or pci-x device pci or pci-x device pci or pci-x device primary port secondary port
section 1 applications introduction pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 1-5 1 ? introduction 1.4.2 intelligent adapters figure 1-4 illustrates how the pci 6540 can be used to allow multiple cpus to be included in a single system. because the host (not shown) and card cpu both expect to enumerate and control the entire address space, the pci 6540 bridge must isolate the address spaces. this configuration is used to create raid controller cards, and intelligent adapter cards of various types in storage and communication subsystems. figure 1-4. intelligent adapters 1.4.3 compactpci universal application figure 1-5 illustrates the pci 6540 being used in universal mode. in this application, the same card can be used for a system or peripheral slot in a compactpci backplane without jumpers. the pci 6540 senses the type of slot (system or peripheral) and configures itself as transparent or non-transparent , as appropriate. in the system slot, the cpu is expected to operate as a host, and the pci 6540 operates in transparent mode. in the peripheral slot, the cpu is part of an intelligent subsystem, and the pci 6540 is configured in non-transparent mode. figure 1-5. compactpci universal application pci-x bus pci 6540 cpu pci device primary port secondary port system slot compactpci bus cpu cpu pci 6540 transparent mode pci device pci device pci 6540 non- transparent mode peripheral slots

pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 2-1 2 ? functional overview 2 functional overview this section describes general operation of the pci 6540 bridge, and provides an overview of write and read transactions, and non-transparent mode. 2.1 general operation as illustrated in figure 2-1, the pci 6540 uses programmable buffers to regulate data flow between the primary and secondary ports. there are two sets of buffers ? one for downstream commands (data flows from primary-to-secondary bus) and one for upstream commands (data flows from secondary-to- primary bus). the buffers are organized as follows:  4-entry read buffer (4 kb)  4-entry write buffer (1 kb) each pci and/or pci-x port can run at different (asynchronous) frequencies, which allows the designer to optimize the performance of each bus. both the primary and secondary pci and/or pci-x ports may be operated at 32- or 64-bit bus data widths, and the two buses may be of different widths. the pci 6540 provides an internal arbiter function on the secondary bus, for up to eight secondary bus masters. however, the internal arbiter may be disabled if an external arbiter is used. the pci 6540 also sources five secondary pci and/or pci-x clock outputs. the pci 6540 is compactpci hot swap ready , and complies with picmg 2.1 r2.0 with high availability programming interface level 1 (pi = 1). (refer to section 22, ? hot swap, ? for further details.) the pci 6540 provides features satisfying the requirements of pci power mgmt. r1.1 , supporting power management states d 0 through d 3cold and d 3hot . both the primary and secondary pci and/or pci-x ports provide a pme# pin. (refer to section 21, ? power management, ? for further details.) the pci 6540 supports a serial eeprom device for register configuration data. this allows the pci 6540 to automatically load custom configuration upon power-up, which minimizes the software overhead of configuring the bridge through a host processor. the pci 6540 fully supports vital product data (vpd) by providing the address, data, and control registers (pvpdad; pci:eah, pvpdata; pci:ech, pvpdid; pci:e8h, and pvpd_next; pci:e9h) for accessing vpd stored in the unused portion of the serial eeprom. vpd allows reading or writing of user data to the upper 192 bytes of serial eeprom space, and that data can contain information such as board serial number, software revision, firmware revision, or other data required for non-volatile storage. (refer to section 23, ? vpd, ? for further details.) figure 2-1. pci 6540 block diagram primary bus secondary bus 4-entry write buffer (1 kb) 4-entry read buffer (4 kb) 4-entry read buffer (4 kb) 4-entry write buffer (1 kb) address translation address translation gpi o serial eeprom clock buffers pci arbiter hot swap system detect
section 2 functional overview write transactions pci 6540 data book, version 1.0 2-2 ? 2003 plx technology, inc. all rights reserved. 2.2 write transactions the primary or secondary bus accomplishes a write operation by placing the address and data into the write buffer . this initiates a pci write operation on the other bus. the write operation is called a posted write operation, because the initiating bus performs the write, then moves on without waiting for the operation to complete. the pci 6540 provides the ability to combine write operations when the operations are directed at the same address range. the device recognizes when write operations are directed at consecutive addresses, and accumulates and bursts those write operations to the pci bus for increased bandwidth. in addition, the pci 6540 has the capability to start a write operation before receiving all write data. in this case, the write operation begins when there is sufficient write data to begin the burst, providing a flow-through operation as the balance of the write data arrives in the device. 2.3 read transactions when the downstream or upstream bus needs to read data from the other bus, the bus places the read request into the read command queue . this initiates a read operation on the other bus, and the data is placed into the associated read buffer as it returns. for pci-x transactions, the pci 6540 also prefetches data as defined in the original read operation. for pci transactions, there is an additional prefetch mechanism when returning the requested read data. in this mode, the pci 6540 can be programmed to prefetch up to 2 kb of data at a time. this data is stored in the read buffer and is not flushed until the buffer times out. if requested, prefetched data can be delivered to the pci bus without the normal read on the other bus. 2.4 non-transparent mode the pci 6540 controls non-transparent read and write operations in a similar way to transparent operations, but with address translation as an additional step in the downstream and upstream directions. a non-transparent pci bridge is used when there is more than one intelligent entity in a system ( such as multiple processors). the bridge isolates processor domains by providing a type 0 configuration header to each cpu, and allowing data to transfer between the domains using address translation. therefore, a processor on one bus cannot directly detect devices connected to the other bus. the pci 6540 has three base address registers (bars), which allow address translation to occur in the downstream and upstream directions, for a total of six bars. (refer to table 2-1.) therefore, it is possible to configure three 32-bit memory bars, one 32-bit i/o bar and two 32-bit memory bars, or one 32-bit i/o (or memory) bar, plus one 64-bit memory bar. in addition to address translation, the pci 6540 has other communication mechanisms between the processors and their domains. this includes software- based doorbell interrupts, hardware-based gpio interrupts, and a semaphore mechanism-based cross- bridge communication mechanism. (refer to section 6.2, ? pci configuration register address mapping ? non-transparent mode, ? and section 20, ? non-transparent mode, ? for further details.) table 2-1. non-transparent mode base address registers bar downstream direction (pcibar x ) upstream direction (pciubar x ) i/o or memory bar 0 (32 bits) pcibar0; primary pci:10h, secondary pci:50h pciubar0; primary pci:50h, secondary pci:10h memory bar 1 (32 bits) pcibar1; primary pci:14h, secondary pci:54h pciubar1; primary pci:54h, secondary pci:14h memory bar 2 (32 bits) or memory 1 bar upper 32 bits pcibar2; primary pci:18h, secondary pci:58h pciubar2; primary pci:58h, secondary pci:18h
pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 3-1 3 ? pin description 3 pin description this section describes the pci 6540 pins (balls), including pin summary, pull-up and pull-down resistor recommendations, power supply decoupling, and pinout listings. 3.1 pin summary tables 3-4 through 3-14 describe each pci 6540 pin common to all modes of operation:  pci-x primary bus interface  pci-x secondary bus interface  clock-related  reset  compactpci hot swap  jtag  serial eeprom interface  gpio  miscellaneous  power and ground  no connect the pins listed in table 3-15 are multiplexed between transparent and non-transparent modes. for a visual view of the pci 6540 pinout, refer to section 26, ? mechanical specs. ? table 3-1 lists abbreviations used in section 3 to represent various pin types. 3.2 pull-up and pull-down resistor recommendations pull-up and pull-down resistor values are not critical. with the exception of those mentioned in section 3.2.1, a 10k-ohm resistor is recommended unless stated otherwise. 3.2.1 primary and secondary pci bus interface pins the pins detailed in table 3-2 are generic primary and secondary pci interface pins. when producing motherboards, system slot cards, adapter cards, backplanes, and so forth, the termination of these pins should follow the guidelines detailed in pci r2.3 and pci-x r1.0b . table 3-1. pin type abbreviations abbreviation pin type i cmos input (5v input tolerant, i/o v dd =3.3v) i/o cmos bi-directional input output (5v input tolerant, i/o v dd =3.3v) o cmos output od open drain oz output three-state pci pci/pci-x compliant pi pci-x input (5v input tolerant, i/o v dd =3.3v) po pci-x output pu signal is internally pulled up sts pci-x sustained three-state output, driven high for one clk before float (5v input tolerant, i/o v dd =3.3v) ts pci-x three-state bi-directional (5v input tolerant, i/o v dd =3.3v) table 3-2. generic pci bus interface pins that follow pci r2.3 and pci-x r1.0b layout guidelines bus pin name primary p_ack64#, p_ad[63:0], p_cbe[7:0]#, p_devsel#, p_frame#, p_gnt#, p_idsel, p_inta#, p_irdy#. p_lock#, p_m66en, p_par, p_par64, p_perr#, p_req#, p_req64#, p_serr#, p_stop#, p_trdy# secondary s_ack64#, s_ad[63:0], s_cbe[7:0]#, s_devsel#, s_frame#, s_gnt[7:0]#, s_idsel, s_inta#, s_irdy#. s_lock#, s_m66en, s_par, s_par64, s_perr#, s_req[7:0]#, s_req64#, s_serr#, s_stop#, s_trdy# table 3-1. pin type abbreviations (continued) abbreviation pin type
section 3 pin description pull-up and pull-down resistor recommendations pci 6540 data book, version 1.0 3-2 ? 2003 plx technology, inc. all rights reserved. the following guidelines for these pins are not exhaustive and should be read in conjunction with the appropriate sections of pci r2.3 and pci-x r1.0b . pci control signals require a pull-up resistor on the motherboard to ensure that these signals are always at valid values when a pci bus agent is not driving the bus. these control signals include ack64#, devsel#, frame#, inta#, irdy#, lock#, perr#, req64#, serr#, stop#, and trdy#. the 32-bit point-to-point and shared bus signals do not require pull-up resistors, as bus parking ensures that these signals remain stable. the other 64-bit signals ? ad[63:32], cbe[7:4]# and par64 ? also require pull-up resistors, as these signals are not driven during 32-bit transactions. depending on the application, m66en may also require a pull-up resistor. the value of these pull-up resistors depends on the bus loading. pci r2.3 provides formulas for calculating these resistors. when making adapter card devices where the pci 6540 primary port is wired to the pci connector, pull-up resistors are not required because they are pre- installed on the motherboard. based on the above, in an embedded design, pull-up resistors may be required for pci control signals on the primary and secondary buses. whereas, for a pci adapter card design, pull-up resistors are required only on the pci 6540 port that is not connected to the motherboard or host system. s_req[7:1]# inputs must be pulled high with a 10k-ohm pull-up resistor. a 10k-ohm pull-up resistor is also required for s_req0# if s_cfn#=0. pull s_gnt[7:1]# high if the pci 6540 is used in universal transparent mode or if s_cfn#=1. 3.2.2 primary and secondary clock pins clock routing is detailed in section 4, ? clocking. ? pull-up resistors are not required on the s_clko[4:0] pins; however, a series termination resistor is required when using these pins. s_clko0 may require a pull-up resistor when this pin is used as a result of s_clkoff=1, or disabled (transparent mode ? clkcntrl[1:0]=11b; pci:68h, non-transparent mode ? clkcntrl[1:0]=11b; pci:94h). table 3-3 delineates the remaining clock pin resistor requirements. note: * refer also to the text preceding this table. 3.2.3 reset pins the p_rstin# and s_rstin# reset signals may require a pull-up resistor, depending on the application. the p_rstout# and s_rstout# reset signals do not require pull-up nor pull-down resistors. note: pwrgd requires a clean, low-to-high transition. this input is not internally de-bounced. pull-up this input to 3.3v, rather than 5v. 3.2.4 compactpci hot swap pins pull the eject pin low if unused. the enum# pin, if used, requires a pull-up resistor. the l_stat compactpci hot swap signal, if used, does not require a pull-up nor pull-down resistor. l_stat must be pulled high if unused. 3.2.5 jtag/boundary scan pins the tck, tdi, and tms jtag signals must be pulled high or low to a known state, using an external resistor. trst# must be pulled low, using a 330 ohm resistor. table 3-3. clock pin pull-up/pull-down resistor requirements resistor requirements pin name must pull low p_clkoe, p_cr, s_cr pull low or connect to 3.3v power supply p_pllen#, s_clkin_stb, s_pllen# pull high or low if unused oscin, refclk optionally pull high or low msk_in, oscsel#, s_clkoff pull-up or pull-down resistor not required p_clkin, s_clkin, s_clko[4:1]*
section 3 power supply decoupling pin description pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 3-3 3 ? pin description the tdo signal does not require a pull-up nor pull-down resistor. 3.2.6 serial eeprom pins eepclk does not require a pull-up nor pull-down resistor. eepdata requires an external pull-up resistor. 3.2.7 gpio pins when programmed as outputs, the gpio pins do not require external pull-up nor pull-down resistors. if configured as inputs, pull the gpio pins high or low, depending on the application. 3.2.8 miscellaneous pins the bpcc_en, dev64#, p_boot, trans#, and u_mode signals may optionally be pulled high or low. s_cfn# may also optionally be pulled high or low, but must be tied low to use the internal arbiter. p_xcap is normally configured by the host. in an embedded system, the p_xcap pin may be pulled high or low. when p_xcap is pulled high, the primary port is forced to use pci-x bus protocol. in general, pull the p_xcap pin low. when p_xcap is pulled low, the primary port bus protocol is set by the pci-x initialization pattern when p_rstin# is de-asserted. in transparent mode, tie s_xcap_pu to s_xcap_in by way of a 1k-ohm resistor. s_xcap_in should follow the programmable pull-up and binary input method, as defined in pci-x r1.0b, ? detection of pci- x add-in card capability ? appendix. pci-x r1.0b allows detection of 66 mhz conventional pci, pci-x 100 mhz (with gpio13=1), or pci-x 133 mhz (with gpio13=0) adapter cards or devices on the secondary interface. in non-transparent mode, pull s_xcap_in low. provide p_tst[1:0] and s_tst[1:0] with the option of being pulled high or low. test must be pulled low. externally pull the reserveio[2:1] pins high. in transparent mode, pull p_pme# and s_pme# high, as they are not used. for transparent mode applications that require the pme# function, directly connect p_pme# to s_pme#, bypassing the pci 6540. in non-transparent applications, connect p_pme# and s_pme# directly to the primary or secondary port pci connector. pull these signals high if unused. 3.2.9 multiplexed transparent and non-transparent pins pull prv_dev (transparent mode) or xb_mem (non-transparent mode) high or low. for p_inta# and s_inta# resistor requirements, refer to table 3-2. 3.3 power supply decoupling decouple all v dd_core , v dd_io , p_av dd and s_av dd lines. the decoupling level depends on power plane routing and the acceptable level of supply noise. in an ideal case, decouple all the above power supply pins, using a parallel combination of 100 nf and 10 nf capacitors. use of the 10 nf capacitors is due to the relatively high inductance of 100 nf capacitors, which can prevent the capture of fast transients. due to routing constraints, it may not be possible to add the parallel combination to all supply pins. in this case, the 10 and 100 nf capacitors can be used alternately among the supply pins. low-inductance 100 nf capacitors are available, which may be used in place of the 100 nf/10 nf parallel combination. take care when choosing the capacitor material. some types have poor thermal characteristics, resulting in the capacitance value substantially dropping at higher temperatures. connect decoupling capacitors to the appropriate ground plane. do not decouple digital supplies to the clean analog phase-locked loop (pll) grounds or vice versa. phase-locked loops are sensitive to power and ground noise. using the same supply/ground for more than one pll, or the digital supply/ground (core or i/o ring) for either pll is not recommended, as noise coupling into the pll supply/ground can cause pll malfunction.
section 3 pin description pinout common to all operating modes pci 6540 data book, version 1.0 3-4 ? 2003 plx technology, inc. all rights reserved. each pll requires a dedicated and independent power supply and ground. ideally, decouple each pll supply with 100 pf, 47 nf and 10 f capacitors, in parallel. one set of capacitors is required for each pll supply. in addition to the above, a 10 f bulk decoupling capacitor for the digital supply is also recommended. the number and placement of this capacitor depends on the power supply and board design. 3.4 pinout common to all operating modes note: refer to section 3.2 for pull-up and pull-down resistor recommendations not specifically stated in these tables. table 3-4. primary pci/pci-x bus interface pins symbol signal name total pins pin type pin number function p_ack64# primary 64-bit transfer acknowledge 1 i/o sts pci w14 when asserted by the target device, indicates that the target can perform 64-bit data transfers. uses the same timing as p_devsel#. when de-asserting, driven high for one cycle before being placed into a high-impedance state. p_ad[31:0] primary address and data, lower 32 bits 32 i/o ts pci r4, r2, r1, t4, t3, t2, t1, u4, u1, v2, v1, w2, w1, v7, w7, y7, w10, y10, t11, u11, v11, w11, y11, t12, w12, y12, u13, v13, w13, y13, u14, v14 multiplexed address and data bus. p_ad[31:0] provide the lower 32 address and/or data pins. address is indicated by p_frame# assertion during pci and pci-x transactions. write data is stable and valid when p_irdy# is asserted and read data is stable and valid when p_trdy# is asserted. data is transferred on rising clock edges when p_irdy# and p_trdy# are asserted. during bus idle, the pci 6540 drives p_ad[31:0] to valid logic levels when p_gnt# is asserted. additionally, these lines provide a portion of the attribute during the attribute phase of pci-x transactions. (refer to section 14, ? pci bus arbitration, ? for further details.) p_ad[63:32] primary address and data, upper 32 bits 32 i/o ts pci v16, w16, y16, u17, v17, w17, y17, y18, w18, u18, y19, w19, v19, w20, v20, u19, u20, t17, t18, t19, t20, r17, r19, r20, p17, p18, p19, p20, n17, n18, n19, n20 multiplexed address and data bus. p_ad[63:32] provide the upper 32 address and/or data pins. during an address phase (when using the dac command and p_req64# is asserted), the upper 32 bits of a 64-bit address are transferred; otherwise, these bits are undefined. during a data phase, the upper 32 bits of data are transferred if a 64-bit transaction is negotiated by p_req64# and p_ack64# assertion.
section 3 pinout common to all operating modes pin description pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 3-5 3 ? pin description p_cbe[3:0]# primary lower command and byte enables 4 i/o ts pci u3, u8, v10, u12 multiplexed command and byte enable fields. provides the transaction type during the pci and pci-x address phase. in the data phase of pci and pci-x memory write transactions, p_cbe[3:0]# provide byte enables. during the pci-x attribute phase, these signals provide a portion of the attribute information. during bus idle, the pci 6540 drives p_cbe[3:0]# to valid logic levels when p_gnt# is asserted. p_cbe[7:4]# primary upper command and byte enables 4 i/o ts pci u15, w15, y15, u16 multiplexed command and byte enable fields. during an address phase (when using the dac command and p_req64# is asserted), the bus command is transferred on these pins; otherwise, p_cbe[7:4]# are reserved and indeterminate. if a 64-bit transaction is negotiated by p_req64# and p_ack64# assertion, then during a pci and pci-x memory write transaction data phase, these pins indicate which byte lanes carry meaningful data. p_devsel# primary device select 1 i/o sts pci t9 asserted by the target, indicating that the device is accepting the transaction. as a master, the pci 6540 waits for p_devsel# assertion within five cycles of p_frame# assertion; otherwise, the transaction terminates with a master abort. before being placed into a high-impedance state, p_devsel# is driven to a high state for one cycle. p_frame# primary frame 1 i/o sts pci v8 driven by the initiator of a transaction to indicate the beginning and duration of an access. p_frame# de-assertion indicates the final data phase requested by the initiator. before being placed into a high- impedance state, p_frame# is driven to a high state for one cycle. p_gnt# primary grant 1 pi p4 when asserted, the pci 6540 can access the primary bus. during bus idle with p_gnt# asserted, the pci 6540 drives p_ad x , p_cbe x #, p_par, and p_par64 to valid logic levels. p_idsel primary initialization device select 1pi u2 used as a chip select line for type 0 configuration accesses to pci 6540 configuration space. p_irdy# primary initiator ready 1 i/o sts pci w8 driven by the initiator of a transaction to indicate its ability to complete the current data phase on the primary bus. before being placed into a high-impedance state, p_irdy# is driven to a de-asserted state for one cycle. table 3-4. primary pci/pci-x bus interface pins (continued) symbol signal name total pins pin type pin number function
section 3 pin description pinout common to all operating modes pci 6540 data book, version 1.0 3-6 ? 2003 plx technology, inc. all rights reserved. p_lock# primary lock 1 i/o sts pci w9 asserted by the bus master, indicating an atomic operation that may require multiple transactions to complete. p_m66en primary 66 mhz enable 1pi m20 set high to allow 66 mhz primary bus operation. along with s_m66en, controls the frequency output to the s_clko[4:0] pins. (refer to section 4, ? clocking, ? for further details.) p_par primary parity, lower 32 bits 1 i/o ts pci u10 parity is even across p_ad[31:0], p_cbe[3:0]#, and p_par [ such as , an even number of ones (1)]. p_par is an input and valid and stable for one cycle after the address phase (indicated by p_frame# assertion) for address parity. during read transactions, p_par is an input and valid for one clock after p_irdy# assertion. during write transactions, p_par is an output and valid for one clock after p_trdy# assertion. p_par is placed into a high-impedance state one cycle after the p_ad[31:0] lines are placed into a high- impedance state. during bus idle, the pci 6540 drives p_par to a valid logic level when p_gnt# is asserted. p_par64 primary parity, upper 32 bits 1 i/o ts pci m16 even parity across p_ad[63:32] and p_cbe[7:4]#. p_par64 must be valid for one clock after each address phase on transactions in which p_req64# is asserted. for data phases, after p_par64 is valid, p_par64 remains valid until one clock cycle after the current data phase completes. p_perr# primary parity error 1 i/o sts pci y9 asserted when a data parity error is detected for data received on the primary interface. before being placed into a high- impedance state, p_perr# is driven to a de-asserted state for one cycle. p_req# primary request 1oz p1 asserted by the pci 6540 to request ownership of the primary bus to perform a transaction. the pci 6540 de-asserts p_req# for at least two pci clock cycles before re-asserting it. p_req64# primary 64-bit transfer request 1 i/o sts pci y14 asserted with p_frame# by a pci bus master to request a 64-bit data transfer. the pci 6540 ignores this input during reset. the pci 6540 asserts p_req64# when the secondary pci master performs a 64-bit transfer or the force64 option is enabled (mscopt[15 and/or 11]=1; pci:46h). table 3-4. primary pci/pci-x bus interface pins (continued) symbol signal name total pins pin type pin number function
section 3 pinout common to all operating modes pin description pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 3-7 3 ? pin description p_serr# primary system error 1 transparent mode: od non-transparent mode: if p_boot=0 od otherwise pi t10 serr# can be driven low by any device to indicate a system error condition. the pci 6540 drives p_serr# during transparent mode, or non-transparent mode with p_boot=0, if one of the following conditions is met:  address parity error  posted write data parity error on target bus  s_serr# is asserted  master abort during posted write transaction  target abort during posted write transaction  posted write transaction discarded  delayed write request discarded  delayed read request discarded  delayed transaction master timeout in non-transparent mode with p_boot=1, pull p_serr# high with an external resistor. p_stop# primary stop 1 i/o sts pci u9 asserted by the target to end the transaction on the current data phase. before being placed into a high-impedance state, p_stop# is driven to a de-asserted state for one cycle. p_trdy# primary target ready 1 i/o sts pci y8 driven by the target of a transaction to indicate its ability to complete the current data phase on the primary bus. before being placed into a high-impedance state, p_trdy# is driven to a de-asserted state for one cycle. total 88 table 3-4. primary pci/pci-x bus interface pins (continued) symbol signal name total pins pin type pin number function
section 3 pin description pinout common to all operating modes pci 6540 data book, version 1.0 3-8 ? 2003 plx technology, inc. all rights reserved. table 3-5. secondary pci/pci-x bus interface pins symbol signal name total pins pin type pin number function s_ack64# secondary 64-bit transfer acknowledge 1 i/o sts pci b17 when asserted by the target device, indicates that the target can perform 64-bit data transfers. uses the same timing as s_devsel#. when de-asserting, driven high for one cycle before being placed into a high-impedance state. s_ad[31:0] secondary address and data, lower 32 bits 32 i/o ts pci a6, b6, c6, d6, a7, b7, c7, d7, c8, d8, a9, b9, d9, e9, a10, b10, e12, a13, b13, c13, d13, a14, b14, c14, a15, b15, d15, a16, b16, c16, d16, a17 multiplexed address and data bus. s_ad[31:0] provide the lower 32 address and/or data pins. address is indicated by s_frame# assertion during pci and pci-x transactions. write data is stable and valid when s_irdy# is asserted and read data is stable and valid when s_trdy# is asserted. data is transferred on rising clock edges when s_irdy# and s_trdy# are asserted. during bus idle, the pci 6540 drives s_ad[31:0] to valid logic levels when the pci 6540 is granted secondary bus ownership. additionally, these lines provide a portion of the attribute during the attribute phase of pci-x transactions. (refer to section 14, ? pci bus arbitration, ? for further details.) s_ad[63:32] secondary address and data, upper 32 bits 32 i/o ts pci b20, c20, c19, d20, d19, d18, d17, e20, e19, e18, e17, f20, f19, f17, g20, g19, g18, g17, h20, h19, h18, h17, j20, j19, j17, j16, k20, k19, k18, k17, k16, l20 multiplexed address and data bus. s_ad[63:32] provide the upper 32 address and/or data pins. during an address phase (when using the dac command and s_req64# is asserted), the upper 32 bits of a 64-bit address are transferred; otherwise, these bits are undefined. during a data phase, the upper 32 bits of data are transferred if a 64-bit transaction is negotiated by s_req64# and s_ack64# assertion. s_cbe[3:0]# secondary lower command and byte enables 4 i/o ts pci b8, c10, d12, d14 multiplexed command and byte enable fields. provides the transaction type during the pci and/or pci-x address phase. in the data phase of pci and pci-x memory write transactions, s_cbe[3:0]# provide the byte enables. during the pci-x attribute phase, these signals provide a portion of the attribute information. during bus idle, the pci 6540 drives s_cbe[3:0]# to valid logic levels when the pci 6540 is granted secondary bus ownership. (refer to section 14, ? pci bus arbitration, ? for further details.)
section 3 pinout common to all operating modes pin description pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 3-9 3 ? pin description s_cbe[7:4]# secondary upper command and byte enables 4 i/o ts pci a18, b18, a19, b19 multiplexed command and byte enable fields. during an address phase (when using the dac command and s_req64# is asserted), the bus command is transferred on these pins; otherwise, s_cbe[7:4]# are reserved and indeterminate. if a 64-bit transaction is negotiated by s_req64# and s_ack64# assertion, then during a pci and pci-x memory write transaction data phase, these pins indicate which byte lanes carry meaningful data. s_devsel# secondary device select 1 i/o sts pci b11 asserted by the target, indicating that the device is accepting the transaction. as a master, the pci 6540 waits for the s_devsel# assertion within five cycles of s_frame# assertion; otherwise, the transaction terminates with a master abort. before being placed into a high-impedance state, s_devsel# is driven to a high state for one cycle. s_frame# secondary frame 1 i/o sts pci d10 driven by the initiator of a transaction to indicate the beginning and duration of an access. s_frame# de-assertion indicates the final data phase requested by the initiator. before being placed into a high- impedance state, s_frame# is driven to a high state for one cycle. s_gnt0# secondary grant 0 1 transparent and non-transparent modes: if s_cfn#=0 oz otherwise pi universal non-transparent mode: pi e1 asserted by the pci 6540 to grant the secondary bus to a secondary bus master when using internal arbitration (s_cfn#=0). when external arbitration is active (s_cfn#=1), s_gnt0# becomes the external bus grant input to the pci 6540. in universal non-transparent mode, s_gnt0# becomes the pci 6540 secondary port grant input. during bus idle with s_gnt0# asserted, the pci 6540 drives s_ad x , s_cbe x #, s_par, and s_par64 to valid logic levels. s_gnt[7:1]# secondary internal arbiter grant 7 to 1 7 transparent and non-transparent modes: if s_cfn#=0 oz otherwise pi universal non-transparent mode: pi g2, g3, g4, f1, f2, f3, f4 asserted by the pci 6540 to grant the secondary bus to a secondary bus master. the pci 6540 de-asserts s_gnt[7:1]# for at least two pci clock cycles before re-asserting them. pull s_gnt[7:1]# high if the pci 6540 is used in universal transparent mode or if s_cfn#=1. note: s_gnt[7:1]# are not used in non-transparent mode. table 3-5. secondary pci/pci-x bus interface pins (continued) symbol signal name total pins pin type pin number function
section 3 pin description pinout common to all operating modes pci 6540 data book, version 1.0 3-10 ? 2003 plx technology, inc. all rights reserved. s_idsel secondary initialization device select (non- transparent mode) 1pi a8 valid only in non-transparent mode. used as a chip select line for type 0 configuration accesses to the pci 6540 secondary configuration space. if not used, pull s_idsel low. s_irdy# secondary initiator ready 1 i/o sts pci e10 driven by the initiator of a transaction to indicate its ability to complete the current data phase on the secondary bus. before being placed into a high-impedance state, s_irdy# is driven to a de-asserted state for one cycle. s_lock# secondary lock 1 i/o sts pci d11 asserted by the bus master, indicating an atomic operation that may require multiple transactions to complete. s_m66en secondary 66 mhz enable 1 if p_m66en=0 od otherwise pi l16 driven low if p_m66en is low; otherwise, driven from outside to select 66 or 33 mhz. s_m66en must be pulled high with a 10k-ohm resistor. along with p_m66en, controls the frequency output to the s_clko[4:0] pins. (refer to section 4, ? clocking, ? for further details.) s_par secondary parity, lower 32 bits 1 i/o ts pci b12 parity is even across s_ad[31:0], s_cbe[3:0]#, and s_par [ such as , an even number of ones (1)]. s_par is an input and valid and stable one cycle after the address phase (indicated by s_frame# assertion) for address parity. during read transactions, s_par is an input and valid for one clock after s_irdy# assertion. during write transactions, s_par is an output and valid for one clock after s_trdy# assertion. s_par is placed into a high- impedance state one cycle after the s_ad[31:0] lines are placed into a high- impedance state. during bus idle, the pci 6540 drives s_par to a valid logic level when the pci 6540 is granted secondary bus ownership. (refer to section 14, ? pci bus arbitration, ? for further details.) s_par64 secondary parity, upper 32 bits 1 i/o ts pci l19 even parity across s_ad[63:32] and s_cbe[7:4]#. s_par64 must be valid for one clock after each address phase on transactions in which s_req64# is asserted. for data phases, after s_par64 is valid, s_par64 remains valid until one clock cycle after the current data phase completes. table 3-5. secondary pci/pci-x bus interface pins (continued) symbol signal name total pins pin type pin number function
section 3 pinout common to all operating modes pin description pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 3-11 3 ? pin description s_perr# secondary parity error 1 i/o sts pci e11 asserted when a data parity error is detected for data received on the secondary interface. before being placed into a high- impedance state, s_perr# is driven to a de-asserted state for one cycle. s_req0# secondary request 0 1 transparent and non-transparent modes: if s_cfn#=0 pi otherwise oz universal non-transparent mode: oz b1 when the internal pci arbiter is enabled (s_cfn#=0), s_req0# is asserted by an external device to request secondary bus ownership to perform a transaction. when using external arbitration (s_cfn#=1 or universal non-transparent mode), s_req0# becomes the external request output from the pci 6540. in universal non-transparent mode, s_req0# becomes the pci 6540 secondary port request output. s_req0# must be externally pulled up through a 10k-ohm resistor if s_cfn#=0. s_req[7:1]# secondary internal arbiter request 7 to 1 7pi e3, e4, d1, d2, d3, c1, c2 asserted by an external device to request secondary bus ownership to perform a transaction. s_req[7:1]# must be externally pulled up through 10k-ohm resistors, including those pins which are not connected to other bus master devices. s_req[7:1]# are not used in universal non- transparent mode and when s_cfn#=1. s_req64# secondary 64-bit transfer request 1 i/o sts pci c17 asserted with s_frame# by a secondary pci bus master to request a 64-bit data transfer. the pci 6540 asserts s_req64# low during reset and when the primary pci master performs a 64-bit transfer or the force64 option is enabled (mscopt[15 and/or 11]=1; pci:46h). table 3-5. secondary pci/pci-x bus interface pins (continued) symbol signal name total pins pin type pin number function
section 3 pin description pinout common to all operating modes pci 6540 data book, version 1.0 3-12 ? 2003 plx technology, inc. all rights reserved. s_serr# secondary system error 1 transparent mode: pi non-transparent mode: if p_boot=0 pi otherwise od a12 serr# can be driven low by any device to indicate a system error condition. the pci 6540 drives s_serr# only during non-transparent mode with p_boot=1 and if the following occurs:  address parity error  posted write data parity error on target bus  p_serr# is asserted  master abort during posted write transaction  target abort during posted write transaction  posted write transaction discarded  delayed write request discarded  delayed read request discarded  delayed transaction master timeout pull s_serr# high with an external resistor. s_stop# secondary stop 1 i/o sts pci c11 asserted by the secondary target to end the transaction on the current data phase. before being placed into a high-impedance state, s_stop# is driven to a de-asserted state for one cycle. s_trdy# secondary target ready 1 i/o sts pci a11 driven by the target of a transaction to indicate its ability to complete the current data phase on the secondary bus. before being placed into a high-impedance state, s_trdy# is driven to a de-asserted state for one cycle. total 102 table 3-5. secondary pci/pci-x bus interface pins (continued) symbol signal name total pins pin type pin number function
section 3 pinout common to all operating modes pin description pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 3-13 3 ? pin description table 3-6. clock-related pins symbol signal name total pins pin type pin number function msk_in mask 1 pi j1 used with gpio[2, 0] to shift in a serial stream of bits to the clock control register (transparent mode ? clkcntrl; pci:68h, non-transparent mode ? clkcntrl; pci:94h) to enable or disable the s_clko[4:0] clock output buffers during reset. msk_in can be pulled low to enable, or high to disable, all s_clko[4:0] buffers. note: s_clkoff can also be used to enable or disable s_clko[4:0]. oscin external oscillator input 1pi p3 external clock input used to generate secondary output clocks when enabled through the oscsel# pin. pull high or low if unused. oscsel# external oscillator enable 1pi n1 enables external clock connection for the secondary interface. if low, the secondary bus clock outputs use the clock signal from oscin, instead of p_clkin, to generate s_clko[4:0]. may optionally be pulled high or low. p_clkin primary pci clock input 1pi n4 provides timing for primary interface transactions. p_clkoe primary clock output enable 1pi r5 test pin. must be pulled low for normal operation. values: 0 = disables test function. 1 = s_clko3 is for primary pll test and s_clko4 is for secondary pll test. p_cr primary pll range control 1pi t6 selects the primary pll operating range. must be pulled low for normal operation. pull or tie to v ss . p_pllen# primary pll enable 1pi t7 values: 0 = enables primary pll. 1 = disables primary pll. must be pulled low or connected to 3.3v power supply. refclk reference clock input 1pi p2 when used, refclk should be a fixed frequency input (14.318 mhz recommended), which is used by the internal counters to determine the primary and secondary pci clock frequency. pull high or low if unused.
section 3 pin description pinout common to all operating modes pci 6540 data book, version 1.0 3-14 ? 2003 plx technology, inc. all rights reserved. s_clkin secondary pci clock input 1pi j5 provides timing for all transactions on the secondary interface except during universal non-transparent mode (u_mode=1 and trans#=1). in universal non-transparent mode, this input is ignored by the pci 6540 and internal logic uses the input clock from the s_clko0 pin. s_clkin_stb secondary clock input stable 1pi k5 values: 0 = s_rstout# remains asserted until s_clkin_stb is 1. 1 = indicates external secondary clock pll and external s_clkin are stable. must be pulled low or connected to 3.3v power supply. if not used, connect to a 3.3v power supply. s_clko0 secondary clock 0 1 transparent and non-transparent modes: if s_clkoff=0 po otherwise pi universal non-transparent mode: pi k3 in transparent mode, s_clko0 is used as a clock output buffer, which is derived from the p_clkin or oscin (if oscsel# is low) clock; however, phase synchronization is not guaranteed. this clock can be placed into a high-impedance state, using the s_clkoff pin. in universal non-transparent mode (u_mode=1 and trans#=1), s_clko0 becomes clock input to the secondary interface. s_clkin is ignored in this mode. this is helpful when producing cards for use in peripheral and system slots in compactpci systems. when configured in a peripheral card, allows s_clko0 to be a clock input from the clk signal of a compactpci backplane. therefore, when used in a compactpci system slot (pci 6540 is operating in transparent mode), s_clko0 drives the compactpci backplane, and when used in a peripheral slot (pci 6540 is operating in non-transparent mode), the backplane clock drives s_clko0. pull-up resistors are not required on s_clko0; however, a series termination resistor is required when using this pin. a pull-up resistor may be required when s_clko0 is used as a result of s_clkoff=1, or disabled (transparent mode ? clkcntrl[1:0]=11b; pci:68h, non-transparent mode ? clkcntrl[1:0]=11b; pci:94h). note: output clocks are not recommended for pci-x applications. external high-quality buffers are recommended. table 3-6. clock-related pins (continued) symbol signal name total pins pin type pin number function
section 3 pinout common to all operating modes pin description pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 3-15 3 ? pin description s_clko[4:1] secondary clock output 4to 1 4 oz l4, l5, k1, k2 provides p_clkin or oscin (if enabled) frequency output clocks; however, phase synchronization is not guaranteed. these clocks can be set to drive 0, using s_clkoff. when the s_clkoff pin is low, the associated clock control register disable bit (transparent mode ? clkcntrl[8:0]; pci:68h, non-transparent mode ? clkcntrl[8:0]; pci:94h) places the associated s_clko x pin into a high- impedance state. this function can be used when the disabled clock buffer does not connect to any device. pull-up resistors are not required on s_clko[4:1]; however, a series termination resistor is required when using these pins. note: output clocks are not recommended for pci-x applications. external high-quality buffers are recommended. s_clkoff secondary clock output disable 1pi k4 values: 0 = enables s_clko[4:0] output. this enable can be overridden by the clock control register disable bits (transparent mode ? clkcntrl[8:0]; pci:68h, non-transparent mode ? clkcntrl[8:0]; pci:94h). 1 = s_clko[4:1] output are driven low and s_clko0 is placed into a high- impedance state. this disable cannot be overridden by the clock control register disable bits. may optionally be pulled high or low. s_cr secondary pll range control 1pi f5 selects the secondary pll operating range. must be pulled low for normal operation. pull or tie to v ss. s_pllen# secondary pll enable 1pi e6 values: 0 = enables secondary pll. 1 = disables secondary pll. must be pulled low or connected to 3.3v power supply. total 18 table 3-6. clock-related pins (continued) symbol signal name total pins pin type pin number function
section 3 pin description pinout common to all operating modes pci 6540 data book, version 1.0 3-16 ? 2003 plx technology, inc. all rights reserved. table 3-7. reset pins symbol signal name total pins pin type pin number function p_rstin# primary reset input 1pi l2 when asserted, outputs are asynchronously placed into a high-impedance state, p_serr# and p_gnt# floated, all primary pci signals ( except p_rstout#) are placed into a high-impedance state, and no bus parking is asserted. all primary port pci standard configuration registers at offsets 00h to 3fh revert to their default state. may require a pull-up resistor, depending on the application. p_rstout# primary reset output (non- transparent mode) 1po l1 valid only in non-transparent mode. asserted when either of the following conditions is met:  s_rstin# is asserted when the primary port has boot priority (p_boot=1).  non-transparent diagnostic control register primary reset bit in configuration space is set (dcntrl[5]=1; pci:d9h). pwrgd power good input 1pi n3 the asserting and de-asserting edges of pwrgd can be asynchronous to p_clkin and s_clkin. important note: the pci 6540 requires a clean low-to-high transition pwrgd input. pwrgd is not internally de-bounced?it must be externally de-bounced and a high input must reflect that the power is indeed stable. when this input is low, all pci 6540 state machines and registers are reset and all outputs, except s_rstout# and p_rstout#, are placed into a high- impedance state. pull-up this input to 3.3v, rather than 5v. s_rstin# secondary reset input 1pi h3 when asserted, all secondary pci signals ( except s_rstout#) are placed into a high-impedance state and bus parking is not asserted. in transparent or universal transparent mode, s_rstin# is not used and must be pulled high. in these modes, s_rstout# functions as the secondary port reset input pin. in non-transparent mode, s_rstin# assertion causes all secondary port control logic to be reset. primary port control logic is not affected. in universal non-transparent mode (u_mode=1 and trans#=1), s_rstin# is ignored and s_rstout# is used as the equivalent of s_rstin#. may require a pull-up resistor, depending on the application.
section 3 pinout common to all operating modes pin description pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 3-17 3 ? pin description s_rstout# secondary reset output 1 if universal non-transparent mode: pi otherwise po h2 asserted when either of the following conditions is met:  p_rstin# is asserted  bridge control register secondary reset bit in configuration space is set (transparent mode ? bcntrl[6]=1; pci:3eh, non-transparent mode ? bcntrl[6]=1; pci:42h shadow register) in transparent or universal transparent mode, s_rstin# is disabled and s_rstout# functions as the secondary port reset input pin. in universal non-transparent mode (u_mode=1 and trans#=1), s_rstout# is disabled and used as the equivalent of s_rstin#. total 5 table 3-7. reset pins (continued) symbol signal name total pins pin type pin number function table 3-8. compactpci hot swap pins symbol signal name total pins pin type pin number function enum# enumeration 1 od y6 indicates an open-drain bused signal asserted when an adapter was inserted or is ready to be removed from a pci slot. asserted through the hot swap registers (hs_cntl; pci:e4h, hs_csr; pci:e6h, hs_next; pci:e5h, and hssrrc; pci:9ch). if used, enum# requires a pull-up resistor. l_stat compactpci led on 1oz w6 indicates the software connection process status. if not used, l_stat must be pulled high. eject hot swap eject 1 pi u6 used to detect the insertion of a hot swap device. when asserted, the pci 6540 asserts enum#. an external pull-down resistor is recommended. if not used, eject must be at logic 0 and pulled low. total 3
section 3 pin description pinout common to all operating modes pci 6540 data book, version 1.0 3-18 ? 2003 plx technology, inc. all rights reserved. note: the jtag interface is described in section 24, ? testability/debug. ? table 3-9. jtag/boundary scan pins symbol signal name total pins pin type pin number function tck test clock input 1 i pu y2 used to clock state information and test data into and out of the pci 6540 during test access port (tap) operation. pull tck high or low to a known state, using an external resistor. tdi test data input 1 i pu v4 used to serially shift test data and test instructions into the pci 6540 during tap operation. pull tdi high or low to a known state, using an external resistor. tdo test data output 1o w3 used to transmit serial data from the pci 6540 tap. data from the selected shift register is shifted out of tdo. tms test mode select 1 i pu u5 used to control the pci 6540 tap controller state. pull tms high or low to a known state, using an external resistor. trst# test reset 1 i pu y3 provides asynchronous initialization of the tap controller. trst# must be pulled low with a 330 ohm resistor. total 5 table 3-10. serial eeprom pins symbol signal name total pins pin type pin number function eepclk serial eeprom clock 1po y5 clock signal to the serial eeprom interface. used during autoload and for vpd functions. eepdata serial eeprom data 1i/o y4 serial data interface to the serial eeprom. requires an external pull-up resistor. total 2
section 3 pinout common to all operating modes pin description pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 3-19 3 ? pin description table 3-11. general purpose i/o pins symbol signal name total pins pin type pin number function gpio[3:0] general purpose input/ output 3 to 0 4 i/o pu m5, m4, m2, m1 general purpose signals, programmable as input-only or bi-directional by writing to the gpio output enable register (transparent mode ? gpiooe[3:0]; pci:66h, non-transparent mode ? gpiooe[3:0]; pci:9ah). during p_rstin# assertion, gpio[2, 0] are used to shift in the clock disable serial data. (refer to section 15, ? gpio interface, ? for further details.) if configured as input, pull high or low, depending on the application. gpio[7:4] general purpose input/ output 7 to 4 4 i/o pu a5, b5, c5, d5 general purpose signals, programmable as input-only or bi-directional by writing to the gpio output enable register (gpiooe[7:4]; pci:9eh). during non-transparent mode:  gpio5 can be enabled as an external interrupt source on the primary port to trigger s_inta#  gpio4 can be enabled as an external interrupt source on the secondary port to trigger p_inta# gpio[7:4] are internally pulled up. (refer to section 15, ? gpio interface, ? for further details.) gpio[15:14, 12:8] general purpose input/ output 15, 14, and 12 to 8 7i/o a2, b2, b3, d4, a4, b4, c4 general purpose signals, programmable as input-only or bi-directional by writing to the gpio output enable register (gpiooe[15:8][7:6, 4:0]; pci:a2h). during pwrgd reset, the status of these pins is latched in the power-up status register (pwrupsr; pci:a0h) for general user-defined use. (refer to section 15, ? gpio interface, ? for further details.) notes: recommended use ( pull-up to 3.3v ): gpio15? primary power state. 1 = primary port power is stable. gpio14? secondary power state. 1 = secondary port power is stable.
section 3 pin description pinout common to all operating modes pci 6540 data book, version 1.0 3-20 ? 2003 plx technology, inc. all rights reserved. gpio13 (as transparent mode pci-x 100 mhz selection input) general purpose input/ output 13 1i/o a3 general purpose signal, programmable as input-only or bi-directional by writing to the gpio output enable register (gpiooe[15:8][5]; pci:a2h). notes: recommended use: transparent mode, 100/133 mhz pci-x clock frequency. during p_rst# assertion, gpio13 status is latched in the power-up status register (pwrupsr[5]; pci:a0h). this value determines the maximum allowable pci-x speed status value, reported in the standard pci-x secondary status register (pcixssr; pci:f2h). transparent mode only ? pull gpio13 low for all 133 mhz-capable applications. transparent mode pci-x clock selection: 0 = secondary pci-x maximum speed is 133 mhz. 1 = secondary pci-x maximum speed is 100 mhz. total 16 table 3-11. general purpose i/o pins (continued) symbol signal name total pins pin type pin number function
section 3 pinout common to all operating modes pin description pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 3-21 3 ? pin description table 3-12. miscellaneous pins symbol signal name total pins pin type pin number function bpcc_en bus/power clock control 1pi j2 when tied high and the pci 6540 is placed into the d 3hot power state, the pci 6540 places the secondary bus into the b 2 power state. the pci 6540 disables the secondary clocks and drives them to 0. when pulled low, placing the pci 6540 into the d 3hot power state has no effect on the secondary bus clocks. dev64# 64-bit device 1 pi w4 the complementary value of this input pin is reflected in pci-x bridge status register (pcixbsr[16]; pci:f4h). dev64# has no effect on bus transactions. values: 0 = 64-bit bus. 1 = 32-bit bus. may optionally be pulled high or low. p_boot primary port boot priority 1pi u7 used in non-transparent mode. values: 0 = secondary port uses boot priority ? the secondary port must set the s_port_ready bit before the primary port can proceed to boot. 1 = primary port uses boot priority ? the primary port must set the p_port_ready bit before the secondary port can proceed to boot. may optionally be pulled high or low. p_pme# primary power management event 1 transparent mode: od non-transparent mode: if p_boot=0 od otherwise pi m19 in transparent mode, p_pme# is not normally used. pull p_pme# high and do not connect it to other power management-related signals. for transparent mode applications that require the pme# function, directly connect p_pme# to s_pme#, bypassing the pci 6540. in non-transparent mode, with the primary port having lower boot priority (p_boot=0), p_pme# is always an output and reflects the s_pme# input state if pme is enabled by setting pmcsr[8]=1; pci:e0h. in non-transparent applications, connect p_pme# directly to the primary or secondary port pci connector. pull high if unused. used by secondary port devices to wake up the primary port host. p_tst[1:0] primary test 2 pi t14, t15 reserved inputs. connect p_tst[1:0] to logic 0 or 1 in layout for timing controls. (refer to the latest reference design information.) provide p_tst[1:0] with the option of being pulled high or low.
section 3 pin description pinout common to all operating modes pci 6540 data book, version 1.0 3-22 ? 2003 plx technology, inc. all rights reserved. p_xcap primary port pci-x enable 1pi n2 values: 0 = primary port protocol is set by standard pci/pci-x reset initialization sequencing. 1 = primary port is forced to run pci-x protocol. if there is no pci-x initialization pattern issued by the system host bus, the primary port runs on pci protocol when p_xcap is pulled low. note: refer to section 3.2.8 for resistor requirements. reserveio[2:1] reserved i/o 2 i/o g1, e2 reserved. externally pull high. s_cfn# internal arbiter enable 1pi h4 values: 0 = uses internal arbiter. 1 (or universal non-transparent mode) = uses external arbiter. s_req0# becomes req# output to external arbiter and s_gnt0# becomes external arbiter gnt# input. in universal non-transparent mode, the pci 6540 is configured to use an external arbiter and s_cfn# becomes don't care input. may optionally be pulled high or low; however, s_cfn# must be tied low to use the internal arbiter. s_pme# secondary power management event 1 transparent mode: od non-transparent mode: if p_boot=0 pi otherwise od l17 in transparent mode, s_pme# is not normally used. pull s_pme# high and do not connect it to other power management-related signals. for transparent mode applications that require the pme# function, directly connect s_pme# to p_pme#, bypassing the pci 6540. in non-transparent mode, with the secondary port having lower boot priority (p_boot=1), s_pme# is always an output and reflects the p_pme# input state if pme is enabled by setting pmcsr[8]=1; pci:e0h. in non-transparent applications, connect s_pme# directly to the primary or secondary port pci connector. pull high if unused. used by secondary port devices to wake up the primary port host. table 3-12. miscellaneous pins (continued) symbol signal name total pins pin type pin number function
section 3 pinout common to all operating modes pin description pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 3-23 3 ? pin description s_tst[1:0] secondary test 2 pi e14, e15 reserved inputs. connect s_tst[1:0] to logic 0 or 1 in layout for timing controls. (refer to the latest reference design information.) provide s_tst[1:0] with the option of being pulled high or low. s_xcap_in secondary port pci-x enable 1pi n5 in transparent mode, s_xcap_in is pulled high with 56k-ohm resistor and connected to s_xcap_pu by way of a 1k-ohm resistor. together with s_xcap_pu, s_xcap_in detects the secondary interface bus mode. if s_xcap_in is always sampled as 1 when sampled by the pci 6540 during secondary reset, the secondary port must run pci-x protocol. in non-transparent mode, pull s_xcap_in low. the secondary interface bus mode is set by a pci-x initialization pattern during secondary reset. note: refer to section 3.2.8 for additional resistor requirements. s_xcap_pu secondary port pci-xcap pull-up 1oz h1 transparent mode. a 1k-ohm resistor must be placed between s_xcap_pu and s_xcap_in. note: s_xcap_pu is not used in non-transparent mode. trans# transparent mode 1pi v5 in compactpci universal bridge applications, trans# can be directly connected to the compactpci sysen# pin. values: 0 = pci 6540 is configured as a standard pci-to-pci bridge. 1 = pci 6540 is operating in non-transparent mode. may optionally be pulled high or low. u_mode universal mode 1 pi w5 used with the trans# pin in compactpci applications. u_mode allows one compactpci card to be used as a system board in a system slot, and as an intelligent subsystem board in a peripheral slot. value: 1 = pci 6540 is configured as a universal bridge. may optionally be pulled high or low. test test pin 1 pi f15 this is a test pin and must be pulled low. total 18 table 3-12. miscellaneous pins (continued) symbol signal name total pins pin type pin number function
section 3 pin description pinout common to all operating modes pci 6540 data book, version 1.0 3-24 ? 2003 plx technology, inc. all rights reserved. table 3-13. power and ground pins symbol signal name total pins pin type pin number function p_av dd primary pll power 2 i p6, r7 clean +2.5v for primary pll. p_av ss primary pll ground 2 i p5, r6 clean ground for primary pll. s_av dd secondary pll power 2 i f7, g6 clean +2.5v for secondary pll. s_av ss secondary pll ground 2 i f6, g5 clean ground for secondary pll. v dd_core core power 19 i e8, e13, f8, f13, g7, g14, h5, h6, h15, h16, n6, n15, n16, p7, p14, r8, r13, t8, t13 +2.5v supply for digital core. v dd_io i/o ring power 35 i c3, c15, c18, f9, f10, f11, f12, f18, g8, g13, h7, h14, j6, j15, k6, k15, l3, l6, l15, m6, m15, n7, n14, p8, p13, r3, r9, r10, r11, r12, r18, v3, v6, v15, v18 +3.3v for digital i/o buffers. v ss ground 48 i a1, a20, c9, c12, e5, e16, g9, g10, g11, g12, j3, j7, j9, j10, j11, j12, j14, j18, k7, k9, k10, k11, k12, k14, l7, l9, l10, l11, l12, l14, m3, m7, m9, m10, m11, m12, m14, m18, p9, p10, p11, p12, t5, t16, v9, v12, y1, y20 ground for digital core and i/o. total 110 table 3-14. no connect pins symbol signal name total pins pin type pin number function nc no connect 10 ? e7, f16, f14, g16, g15, p16, p15, r16, r15, r14 no connect pins, which are not to be connected or used as routing channels. may be used in future pci 6540 revisions. total 10
section 3 pinout specific to transparent and non-transparent modes pin description pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 3-25 3 ? pin description 3.5 pinout specific to transparent and non-transparent modes table 3-15. multiplexed transparent/non-transparent pins symbol signal name total pins pin type pin number function after power-up, the functions set by prv_dev can be modified by software, using the chip control register (transparent mode ? ccntrl[3:2]; pci:40h, non- transparent mode ? ccntrl[3:2]; pci:d8h). must be pulled high or low. prv_dev private device and memory enable (transparent mode) 1pi j4 prv_dev: when set to 1, the pci 6540 can mask secondary devices using idsel connected to s_ad[23:16] as private devices. any type 1 configuration access to these idsels is routed to s_ad24. if there is no device on s_ad24, the rerouted type 1 configuration cycles are master aborted. the pci 6540 also reserves private memory space for the secondary port. the memory space can be programmed using the private memory base and limit registers (base ? pvtmbar; pci:6ch and pvtmbaru32; pci:70h, limit ? pvtmlmt; pci:6eh and pvtmlmtu32; pci:74h). if the limit is smaller than the base, private memory space is disabled. the primary port cannot access this memory space through the bridge and the secondary port does not respond to memory cycles addressing this private memory space. xb_mem cross-bridge memory window enable (non- transparent mode) xb_mem: when set to 1, the pci 6540 automatically claims 16 mb of memory space. this allows the boot-up of the low-priority boot port to proceed without waiting for the priority boot port to program the corresponding memory base address registers (bars). although the default claims 16 mb, the bars can be modified by serial eeprom or software to change the window size. if xb_mem=1, the p_port_ready or s_port_ready mechanism is not relevant. also, if xb_mem=1, the pci 6540 autoloads serial eeprom data up to group 5 instead of group 4.
section 3 pin description pinout specific to transparent and non-transparent modes pci 6540 data book, version 1.0 3-26 ? 2003 plx technology, inc. all rights reserved. p_clkrun# primary clock run (transparent mode) 1 i/o m17 p_clkrun#: valid only in transparent mode. used by the central resource (bus support functions supplied by the host system) to slow down or stop the pci clock when the clock is enabled. p_inta# primary interrupt a# output (non- transparent mode) od p_inta#: in non-transparent mode, becomes p_inta# output. driven by the pci 6540 to generate a pci interrupt request on the primary bus. in universal non-transparent mode, placed into a high-impedance state. (refer to sections 6.2.4.8, 6.2.4.10, and section 20.3 for further details.) note: refer to section 3.2.1 for resistor requirements. s_clkrun# secondary clock run (transparent mode) 1 i/o l18 s_clkrun#: valid only in transparent mode. when driven high, slows down or stops the secondary pci clock and is driven by a secondary pci device to keep the clock running. s_inta# secondary interrupt a# output (non- transparent mode) od s_inta#: in non-transparent mode, becomes s_inta# output. driven by the pci 6540 to generate a pci interrupt request on the primary bus. in universal non-transparent mode, placed into a high-impedance state. (refer to sections 6.2.4.8, 6.2.4.10, and section 20.3 for further details.) note: refer to section 3.2.1 for resistor requirements. total 3 table 3-15. multiplexed transparent/non-transparent pins (continued) symbol signal name total pins pin type pin number function
pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 4-1 4 ? clocking 4 clocking this section describes the pci 6540 clocking requirements. to correctly operate, the pci 6540 requires both a primary and secondary clock. 4.1 primary and secondary clock inputs the pci 6540 implements a separate clock input for each pci interface. the primary interface is synchronized to the primary clock input, p_clkin, and the secondary interface is synchronized to the secondary clock input, s_clkin. the pci 6540 primary and secondary clock inputs can be asynchronous. there are no skew constraints between the primary and secondary clock inputs; however, the maximum ratio between the primary and secondary clock frequencies are 1:4 or 4:1. the pci 6540 operates at a maximum frequency of 133 mhz. the device provides five clock outputs (s_clko[4:0]), which can be derived from p_clkin, p_clkin/2, or an external asynchronous clock source. 4.2 secondary clock outputs note: the secondary clock outputs provided by the pci 6540 are not recommended for pci-x use. use high-quality clock buffers for pci-x applications. the pci 6540 has five secondary clock outputs that can be used to drive up to four external secondary bus devices. s_clko0 drives the pci 6540 s_clkin signal. the rules for using secondary clocks are:  each secondary clock output is limited to no more than one pci load  each clock trace length, including the feedback clock to the pci 6540 s_clkin signal, must have equal length and impedance  terminate or disable unused secondary clock outputs to reduce power dissipation and noise in the system 4.3 disabling secondary clock outputs secondary clock outputs may be disabled in two ways. if the s_clkoff input is asserted (high), s_clko0 is placed into a high-impedance state and s_clko[4:1] are disabled and driven low. the clock control register (transparent mode ? clkcntrl; pci:68h, non-transparent mode ? clkcntrl; pci:94h) allows individual clock outputs to be disabled. clock outputs disabled by clkcntrl remain disabled, regardless of s_clkoff status. 4.4 using an external clock source s_clk_stb input allows for an indication that the secondary external clock source is stable. if this input is de-asserted (low), then this indicates that the s_clkin signal is not yet stable. the pci 6540 does not de-assert s_rstout# until s_clk_stb is asserted (high). this ensures that a valid and stable secondary clock source is present before transactions can occur on the secondary bus. the pci 6540 uses two signals, oscsel# and osc_in, when connecting an external clock source to the pci 6540. during normal operation, the pci 6540 generates s_clko[4:0] outputs, based on the pci clock source (p_clkin). if oscsel# is asserted (low), then the pci 6540 derives s_clko[4:0] from the oscin signal instead. clock division is performed on the oscin and p_clkin clocks, depending on the p_m66en and s_m66en signal states.
section 4 clocking frequency division options pci 6540 data book, version 1.0 4-2 ? 2003 plx technology, inc. all rights reserved. 4.5 frequency division options the pci 6540 has built-in frequency division options to automatically adjust the s_clko[4:0] clocks for pci 66 or 33 mhz operations. for pci-x applications, use external, high-quality clock buffers and dividers. table 4-1 lists the clock division ratios used, depending on p_m66en and s_m66en status. note: s_m66en cannot be floating. 4.6 running secondary port faster than primary port the pci 6540 allows the secondary port to use a higher clock frequency than that of the primary port. in this case, a secondary clock source, using an external oscillator or clock generator, must be provided. if the external oscillator is connected to oscin and oscsel# is asserted (low), then the output generated by s_clko[4:0] is divided, as per table 4-1. division control can be disabled by pulling s_m66en high and not connecting this pin to a pci slot (which may be on the secondary bus). if the s_clko[4:0] outputs are not required, then the external clock can be fed directly into the s_clkin signal. 4.7 universal mode clock behavior the pci 6540 clock behavior changes slightly when the device is configured in universal mode. in universal non-transparent mode (u_mode=1 and trans#=1), input to the s_clkin pin is ignored. instead, the pci 6540 uses the s_clko0 pin as the secondary interface clock input. as a result, s_clko0 operates as an input, rather than an output. the object of this is to allow the secondary interface clock to be derived from the pci clk of a compactpci backplane. when a suitably configured card is inserted in a compactpci system slot, the s_clko0 output drives the compactpci clk0 clock lines on the backplane. however, when the card is inserted in a peripheral slot, the s_clko0 input is driven from the backplane clock. if an external clock buffer is used instead of s_clko0 to drive the system slot pci clock signal during pci-x applications, then this output can be placed into a high-impedance state by setting the s_clkoff input to 1. table 4-1. pci clock division ratios p_m66en s_m66en division ratio 111/1 101/2 011/1 001/1
section 4 pll and clock jitter clocking pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 4-3 4 ? clocking 4.8 pll and clock jitter the pci 6540 uses one pll each for the primary and secondary interfaces. these plls can be individually disabled by connecting the p_pllen# or s_pllen# pin to 1. the minimum input frequency of each pll is 50 mhz. if a pci 6540 port is used in a low-speed application ( for example, at 33 mhz), then disable the appropriate pll by setting p_pllen# or s_pllen# to high. the pll is sensitive to power and ground noise. to reduce power and ground bounce caused by the digital logic feeding into the plls, a dedicated set of pll power and ground pins are provided. connect the vdd pins for each pll to a clean 2.5v supply and decouple to the appropriate ground pins. table 4-2 details the pll operational parameters for both primary and secondary plls. table 4-2. pll and clock jitter parameters parameter minimum typical maximum unit condition input frequency 50 ? 133 mhz ? input rise and fall time ? ? 500 ps ? input cycle-to-cycle jitter -100 ? +100 ps ? input jitter modulation frequency must be < 100 khz to allow pll tracking or > 30 mhz to allow pll filtering output cycle-to-cycle jitter -150 ? +150 ps clean power v dd = 2.5v output duty cycle 45 ? 55 % clean power v dd = 2.5v phase lock time ? ? 100 s clean power v dd = 2.5v pll power dissipation ? 9 25 mw clean power v dd = 2.5v f in = f out = 133 mhz operating temperature -40 ? +125 c ?
section 4 clocking detecting pci bus speed with the reference clock pci 6540 data book, version 1.0 4-4 ? 2003 plx technology, inc. all rights reserved. 4.9 detecting pci bus speed with the reference clock the pci 6540 has a reference clock input (refclk), which is used by a timer. any fixed frequency source can be used as a reference clock source, although 14.318 mhz is recommended. the timer can be set to time the primary or secondary port clock inputs (p_clkin or s_clkin, respectively). the timer control register controls the count period and the pci clock to be timed (tmrcntrl[7:4 and 2:1]; pci:61h, respectively). software can then read the timer value from the timer counter register (tmrcnt; pci:62h) and calculate the corresponding port ? s clock frequency. 4.10 primary or secondary clock frequency measurement the reference clock input signal, refclk, is used with the timer control and timer counter registers (tmrcntrl; pci:61h and tmrcnt; pci:62h, respectively) to measure the approximate bus frequency on the primary or secondary interface. the refclk clock frequency should be significantly slower than that of the primary and secondary clocks. software must select the target bus using bit 1 of the timer counter clock source select bits (tmrcntrl[2:1]; pci:61h). note that tmrcntrl[2] is always cleared to 0. software sets the timer enable bit to start the measurement (tmrcntrl[0]=1; pci:61h). tmrcntrl[0] remains set, and software polls the timer stop bit until the bit is set to 1 (tmrcntrl[3]=1; pci:61h). when tmrcntrl[3]=1, the measurement has finished and the result is presented in the timer counter register. to start a new measurement, the software must set tmrcntrl[0] to 0, and then 1. the measurement process counts the total measured bus clock rising edges that occurred during the overall counter period. the counter, however, accumulates only the bus clock rising edges that occurred during the high states of each reference clock cycle. the count period bit (tmrcntrl[5:4]) values indicate the number of high states used to accumulate the count (16, 32, 64, or 128). the total number of rising edges in all high states are accumulated and reported in the timer counter register. for example, if a reference clock speed of 14.318 mhz is used, the size of each reference clock high state is (1/14.318m)/2 = 349 ns. the timer counter register stores the accumulated count of rising edges within the count period. when the measurement is finished (indicated by tmrcntrl[3]=1), the tmrcnt register value can be used to determine the approximate bus speed. example:  speed of reference clock = 14.318 mhz  measured clock = secondary bus clock  count period (number of windows; tmrcntrl[5:4]=00b) = 16  secondary bus speed = 66 mhz based on the above configuration, tmrcntrl[1] is set to 1 because the secondary bus clock is the measured clock. tmrcntrl[5:4] are set to 00b for 16 high states. the software first writes 0 to tmrcntrl[0] (assuming there is a previous measurement), then writes 1 to start the measurement. software polls tmrcntrl[3] until the bit is set to 1. expected timer counter count for this example: because the reference clock is 14.318 mhz, each window size is about 349 ns. if the measured clock speed is 66 mhz, the clock period is about 15 ns. therefore, each window count is 23 or 24 (349 / 15). because 16 windows (high states) were opened, the total count is in the range of 23 x 15 = 345 and 24 x 15 = 360. note: for further details, refer to the tmrcntrl and tmrcnt registers in section 6, ? registers. ?
pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 5-1 5 ? reset and initialization 5 reset and initialization this section describes pci-xcap connections and operating frequency, secondary bus mode and frequency initialization, conventional pci mode 66 mhz operation, reset, and register initialization. 5.1 pci-xcap connections and operating frequency the pci 6540 operates at up to 66 mhz when working in conventional pci mode and up to 133 mhz in pci-x mode. the primary and secondary ports each have a pci-xcap input (p_xcap and s_xcap_in, respectively), that determine whether that port is configured as a pci or pci-x port. in addition, pci-xcap is also used to determine the operating frequency of ports operating in pci-x mode. 5.1.1 primary port pci-xcap connection in a standard adapter card design, the p_xcap pin should be configured as detailed in pci-x r1.0b , section 6.2. however, there may be situations where the standard pci-x reset and initialization sequence is not available. for example, this may be the case during a compactpci hot swap insertion. to force the primary port to use the pci-x protocol, set the p_xcap input to 1. if p_xcap is set to 0, the primary port is configured to operate using the pci protocol and standard pci reset and initialization occurs. 5.1.2 secondary port pci-xcap connection in transparent mode, two pci 6540 pins are associated with the secondary pci-xcap connection ? s_xcap_in and s_xcap_pu. the s_xcap_in pin is used to determine whether secondary devices are capable of pci-x operation and at what frequency the devices can operate. connect s_xcap_in to a weak 56k-ohm resistor, pulled up to 3.3v, and to the pci-xcap pin on secondary pci-x slots. connect s_xcap_pu output and s_xcap_in together with a 1k-ohm resistor. during pci-x and frequency discovery on the secondary bus, the s_xcap_pu signal is driven high and provides a strong pull-up resistor. this allows capacitors attached to pci-x adapter card pci-xcap pins to charge. the pci 6540 can then determine whether pci-x cards are attached to the secondary port. if pci-x and frequency discovery are not required, set s_xcap_in to 1 to force pci-x transactions to occur on the secondary bus, or to 0 to force conventional pci transactions. in non-transparent mode, s_xcap_pu output is always floating and s_xcap_in functions as described in section 5.1.1. 5.2 secondary bus mode and frequency initialization sequence the pci 6540 places its secondary bus in pci-x mode based on the capabilities of devices connected to the secondary bus, independent of the primary bus mode. if only one side of a bridge is operating in pci-x mode, the pci 6540 translates the protocol between the two buses. at the rising edge of p_rstin#, the pci 6540 latches the frequency and mode of its primary bus. for transparent mode, the pci 6540 initializes the secondary bus as follows: 1. senses the state of s_xcap_in and s_m66en for all devices on the secondary bus and selects the appropriate mode and clock frequency. when:  secondary bus includes one or more 33 mhz conventional pci devices, the bus operating frequency must be conventional pci 33 mhz.  only conventional pci 66 mhz devices are present on the secondary bus, the operating frequency is 66 mhz.  secondary bus includes only pci-x 133 devices, the maximum clock frequency is 133 mhz.  secondary bus includes only pci-x 100 devices, the maximum clock frequency is 100 mhz. 100 mhz selection status can be configured using the gpio13 pin.
section 5 reset and initialization conventional pci mode 66 mhz operation pci 6540 data book, version 1.0 5-2 ? 2003 plx technology, inc. all rights reserved.  secondary bus includes only pci-x 66 devices, the maximum clock frequency is 66 mhz. 2. asserts the appropriate signals for the pci-x initialization pattern on the secondary bus. 3. de-asserts s_rstout# to place all devices on the secondary bus in the appropriate mode. 5.3 conventional pci mode 66 mhz operation the p_m66en and s_m66en signals indicate whether the primary and secondary interfaces are operating at 66 mhz. this information is needed to control the secondary bus frequency. pci r2.3 prohibits pci clock frequency changes above 33 mhz, except during a pci reset. the following primary and secondary bus frequency combinations are supported when using the primary p_clkin signal to generate the secondary clock outputs:  66 mhz primary bus, 66 mhz secondary bus  66 mhz primary bus, 33 mhz secondary bus  33 mhz primary bus, 33 mhz secondary bus if p_m66en is low ( for example , the primary bus runs at 33 mhz), the pci 6540 drives s_m66en low to indicate that the secondary bus is operating at 33 mhz. if the secondary bus is set to run faster than the primary bus, s_m66en need not be connected to secondary pci devices. the pci 6540 can also generate s_clko[4:0] outputs from oscin, if enabled. when the pci 6540 is using asynchronous clock inputs ( for example, s_clko[4:0] are not derived from p_clkin or oscin), the previously listed frequencies are not the only possible clock combinations. if an external clock is used for the secondary interface, the pci 6540 operates with a maximum ratio of 1:4 or 4:1 between the primary and secondary bus clocks. 5.4 reset this subsection describes the primary and secondary interface, and chip reset mechanisms. the pci 6540 has three reset inputs ? pwrgd, p_rstin#, and s_rstin#. in addition, the pci 6540 can respond to power management-initiated internal reset and software-controlled internal reset. after the reset signals are de-asserted, the pci 6540 requires 512 clocks to initialize bridge functions. during this initialization, type 0 accesses can be accepted. if cross-bridge traffic is presented to the pci 6540, the device changes to an unknown state. note: care must be taken when using p_rstout# and s_rstout# to feed to their corresponding reset input signals (p_rstin# and s_rstin#, respectively). p_rstin# can cause s_rstout# assertion and s_rstin# can cause p_rstout# assertion. therefore, there is the potential to lock pci 6540 in a permanent reset cycle if both reset outputs are fed back to their corresponding inputs. 5.4.1 power good reset when pwrgd is not active, the following occurs: 1. pci 6540 immediately places all primary pci-x interface signals ( except p_rstout#) into a high-impedance state. 2. pci 6540 performs a full chip reset. 3. p_rstout# is not asserted in transparent mode, but is asserted in non-transparent mode. s_rstout# is asserted (low). 4. all registers and extended registers with default values are reset. 5. if p_rstin# is low, pwrgd going from low-to-high causes the serial eeprom to be loaded. note: the pci 6540 requires a clean low-to-high transition for pwrgd input. the pwrgd signal is not internally debounced ? it must be externally debounced and a high input must reflect that the power is stable (non-transparent mode only). the asserting and de-asserting edges of pwrgd can be asynchronous to p_clkin and s_clkin. usually, pwrgd should not change to low when p_rstin# and/or s_rstin# are high. if p_rstin# is de-asserted before pwrgd assertion, the primary pci-x signals remain in a high-impedance state because pwrgd is not asserted. s_rstout# remains asserted until a few clocks after pwrgd assertion. similarly, if s_rstin# is de-asserted before pwrgd is asserted, the secondary pci-x signals remain in a high-impedance state. when pwrgd is de-asserted, all primary and secondary pci signals are placed into a high- impedance state. s_rstout# assertion is extended until pwrgd is asserted. (refer to timing diagram 5-1.)
section 5 reset reset and initialization pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 5-3 5 ? reset and initialization timing diagram 5-1. pwrgd assertion pwrgd p/s_pci-x signals s_rstout# power not good power good high-impedance state normal state
section 5 reset and initialization reset pci 6540 data book, version 1.0 5-4 ? 2003 plx technology, inc. all rights reserved. 5.4.1.1 pwrgd, resets, and pci-x signals relationship the following diagrams illustrate the timing relationship between the pwrgd, p_rstin#, s_rstin# and pci-x signals. in general, ensure pwrgd is ahead of p_rstin# and s_rstin#. timing diagram 5-2. pwrgd and resets where s_rstin# is de-asserted late ? universal transparent mode timing diagram 5-3. pwrgd and resets where s_rstin# is tied high ? universal transparent mode power not good power good power off power on inactive active high-impedance state high-impedance state normal state normal state early power pwrgd p_clkin and s_clkin p_rstin# s_rstout# s_rstin# p_pci-x signals s_pci-x signals power not good power good power off power on inactive active normal state normal state high-impedance state high-impedance state s_rstin# tied high early power pwrgd p_clkin and s_clkin p_rstin# s_rstout# s_rstin# p_pci-x signals s_pci-x signals
section 5 reset reset and initialization pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 5-5 5 ? reset and initialization in timing diagram 5-4, the pci 6540 is using universal non-transparent mode. therefore, the s_rstout# pin acts as the secondary port reset input (equivalent to s_rstin#) and s_rstin# is not used. timing diagram 5-4. pwrgd and resets ? universal non-transparent mode power not good power good power off power on inactive active early power pwrgd p_clkin and s_clkin p_rstin# s_rstout# high-impedance state high-impedance state normal state normal state p_pci-x signals s_pci-x signals
section 5 reset and initialization reset pci 6540 data book, version 1.0 5-6 ? 2003 plx technology, inc. all rights reserved. 5.4.2 primary reset input when p_rstin# is asserted, the following events occur: 1. the pci 6540 immediately places all primary pci interface signals ( except p_rstout#) into a high-impedance state. 2. transparent mode:  all registers ( except sticky scratch registers, scratch x ; ext:00h to 07h) are reset.  s_rstout# is driven active to indicate a primary pci reset. non-transparent mode:  primary configuration registers at offsets 00h to 3fh and shadow registers at offsets 40h to 77h are reset.  upon p_rstin# de-assertion, s_inta# is asserted and the appropriate status bit set (dwnintsr[4]=1; pci:cah) if the primary pci interrupt event is enabled (dwninte[4]=1; pci:cfh).  pci 6540 performs a primary port reset. the secondary port and sticky scratch registers are not affected. 3. in transparent and universal transparent modes, p_rstin# assertion automatically causes a secondary port reset and s_rstout# is asserted. s_trdy#, s_devsel#, and s_stop# are driven for pci-x speed inquiry. 4. clock disable bits (transparent mode ? clkcntrl[8:0]; pci:68h, non-transparent mode ? clkcntrl[8:0]; pci:94h) are shifted in at p_rstin# de-assertion. the asserting and de-asserting edges of p_rstin# can be asynchronous to p_clkin and s_clkin. when p_rstin# is asserted, all primary pci interface signals, including the primary request output, are immediately placed into a high-impedance state. all posted write and delayed transaction data buffers are reset. therefore, transactions residing in the buffers are discarded upon p_rstin# assertion. 5.4.3 primary reset output when operating in non-transparent mode, the pci 6540 asserts p_rstout# when one of the following conditions is met:  pwrgd input is asserted low in non-transparent mode (trans#=1).  s_rstin# (using the s_rstout# pin) is asserted in universal non-transparent mode (u_mode=1 and trans#=1).  s_rstin# is asserted in standard non- transparent mode, with the primary port having boot priority (trans#=1 and p_boot=1).  non-transparent diagnostic control register primary reset bit is set (dcntrl[5]=1; pci:d9h). p_rstout# remains asserted until the primary reset output mask bit is cleared (dcntrl[4]=0; pci:d9h). p_rstout# is used only for non-transparent mode operation, and is not valid when the pci 6540 is in transparent mode. 5.4.4 secondary reset input the s_rstin# pin is used only during non-transparent mode. in universal non-transparent mode, the s_rstout# pin functions as the secondary port reset input pin. when s_rstin# is asserted, the following events occur: 1. pci 6540 immediately places all secondary pci interface signals ( except s_rstout#) into a high-impedance state. 2. non-transparent mode secondary configuration registers at offsets 00h to 3fh are reset. 3. p_rstout# is driven active to indicate a secondary pci reset if the primary reset output mask bit is not set (dcntrl[4]=0; pci:d9h). 4. upon s_rstin# de-assertion, p_inta# is driven active and the status bit is set if the secondary pci interrupt event is enabled (upsintsr[4]=1; pci:ceh and upsinte[4]=1; pci:cbh, respectively). 5. pci 6540 performs a secondary port reset. the primary port and sticky scratch registers (scratch x ; ext:00h to 07h) are not affected.
section 5 reset reset and initialization pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 5-7 5 ? reset and initialization the asserting and de-asserting edges of s_rstin# can be asynchronous to p_clkin and s_clkin. note: when not used, connect or pull s_rstin# high. in non-transparent mode, when s_rstin# is asserted, all secondary pci interface signals, including the secondary grant outputs, are immediately placed into a high-impedance state. all posted write and delayed transaction data buffers are reset. therefore, transactions residing in the buffers are discarded upon s_rstin# assertion. when s_rstout# is asserted by way of the secondary reset bit (transparent mode ? bcntrl[6]=1; pci:3eh, non-transparent mode ? bcntrl[6]=1; pci:42h shadow register), the pci 6540 remains accessible during secondary reset and continues to respond to accesses to its configuration space from the primary interface. 5.4.4.1 universal mode secondary reset input in universal non-transparent mode (u_mode=1 and trans#=1), s_rstout# is disabled and the s_rstout# pin is used as the equivalent of the s_rstin# pin. during this mode, a low input presented at s_rstout# causes a secondary port reset. s_rstin# is not used in this mode. 5.4.5 secondary reset output the pci 6540 asserts s_rstout# when one of the following conditions is met:  p_rstin# is asserted. s_rstout# remains asserted when one of the following conditions is met:  p_rstin# is asserted secondary clock serial disable mask (transparent mode ? clkcntrl[8:0]; pci:68h, non-transparent mode ? clkcntrl[8:0]; pci:94h) is being shifted in (16 clock cycles after p_rstin# de-assertion), using msk_in and gpio[2, 0]  s_clkin_stb is low  diagnostic control register chip reset and bridge control secondary reset bits are set (transparent mode ? dcntrl[0]=1; pci:41h and bcntrl[6]=1; pci:3eh, non-transparent mode ? dcntrl[0]=1; pci:d9h and bcntrl[6]=1; pci:42h, respectively) s_rstout# remains asserted until the secondary reset output mask bit is cleared (transparent mode ? dcntrl[3]=0; pci:41h, non-transparent mode ? dcntrl[3]=0; pci:d9h). in transparent mode, or non-transparent mode with p_boot=0, when there is a d 3hot -to-d 0 transition with the power management control/status register power state bits programmed to d 0 (pmcsr[1:0]=00b; pci:e0h), s_rstout# is active for 16 primary port pci clock cycles. in transparent and universal transparent modes, while s_rstout# is asserted, s_devsel#, s_stop#, and s_trdy# are driven for pci-x speed inquiry. 5.4.6 software resets the diagnostic control register chip reset bit can be used to reset the pci 6540 as the pwrgd input (transparent mode ? dcntrl[0]=1; pci:41h, non-transparent mode ? dcntrl[0]=1; pci:d9h). this action does not cause p_rstout# assertion. however, the action does cause s_rstout# assertion and the signals are not placed into a high-impedance state. additionally, if the pci 6540 is in non-transparent mode, the serial eeprom autoloads. when the chip reset bit is set, all registers and chip states are reset. when chip reset completes, within four pci clock cycles after completion of the configuration write operation that sets the chip reset bit, the chip reset bit automatically clears and the pci 6540 is ready for configuration. during chip reset, the pci 6540 is inaccessible. 5.4.7 power management internal reset in transparent mode, or non-transparent mode with p_boot=0, when there is a d 3hot -to-d 0 transition with the power management control/status register power state bits programmed to d 0 (pmcsr[1:0]=00b; pci:e0h), an internal reset equivalent to p_rstin# is generated and all relevant registers are reset. however, p_rstout# and s_rstout# are not asserted. in non-transparent mode with p_boot=1, when there is a d 3hot -to-d 0 transition with the power state bits programmed to d 0 , p_rstout# is not asserted.
section 5 reset and initialization reset pci 6540 data book, version 1.0 5-8 ? 2003 plx technology, inc. all rights reserved. 5.4.8 reset inputs table there are other transparent and non-transparent mode-related reset controls that can be used to generate primary or secondary reset outputs. table 5-1 depicts the effect of various reset inputs on the pci 6540. table 5-1. reset input effect on pci 6540 operating mode reset inputs transparent mode non-transparent mode universal transparent mode universal non-transparent mode (s_rstout# used as secondary reset input) p_rstin#  resets primary and secondary ports  asserts s_rstout#  causes serial eeprom load  resets only primary port  asserts s_rstout#  causes serial eeprom load  resets primary and secondary ports  asserts s_rstout#  causes serial eeprom load  resets only primary port  causes serial eeprom load s_rstin# not used  resets only secondary port  asserts p_rstout# not used not used s_rstout# not used as input not used as input not used as input  used as reset input and resets only secondary port  asserts p_rstout# s_clk_stb not active  resets only secondary port  asserts s_rstout# asserts s_rstout#  resets only secondary port  asserts s_rstout# no effect pwrgd not ready  asserts s_rstout#  resets sticky scratch registers (scratch x ; ext:00h ? 07h)  causes serial eeprom load  asserts p_rstout# and s_rstout#  causes serial eeprom load  resets sticky scratch registers  asserts s_rstout#  resets sticky scratch registers  causes serial eeprom load  asserts p_rstout#  causes serial eeprom load  resets sticky scratch registers transparent mode chip reset (dcntrl[0]=1; pci:41h) resets internal state machines and s_rstin# n/a resets internal state machines and s_rstin# n/a non-transparent mode chip reset (dcntrl[0]=1; pci:d9h) n/a  resets internal state machines  causes serial eeprom load n/a resets internal state machines transparent mode secondary reset (bcntrl[6]=1; pci:3eh) asserts s_rstout# n/a asserts s_rstout# n/a non-transparent mode secondary reset (bcntrl[6]=1; pci:42h shadow register) n/a causes s_rstout# active n/a no effect non-transparent mode primary reset (dcntrl[5]=1; pci:d9h) n/a causes p_rstout# to be active n/a causes p_rstout# to be active
section 5 reset reset and initialization pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 5-9 5 ? reset and initialization 5.4.9 power-up and reset pin state table the pci 6540 supports pwrgd, p_rstin#, s_rstin#, and device hiding. table 5-2 depicts the pin state for each event. with the exception of the power not good state (pwrgd=0), all states assume a valid input clock. for device hiding, the pin follows the corresponding mode ? s value to the left, except for differences listed in the ? device hiding ejector switch open, p_rstin#=1 and s_rstin#=1 ? column. table 5-2. pin state during pwrgd, p_rstin#, s_rstin#, and device hiding power-up/reset pci 6540 pins pwrgd=0, with or without clock, p_rstin#=x transparent mode, pwrgd=1 and p_rstin#=0 non-transparent mode, p_rstin#=0 and s_rstin#=0 non-universal, non-transparent mode, p_rstin#=1 and s_rstin#=0 universal non-transparent mode, p_rstin#=1 and s_rstin#=0 device hiding ejector switch open, p_rstin#=1 and s_rstin#=1 bpcc_en i iiii dev64# i i i i i eepclk no p_clkin: u with p_clkin: d1 d1 d1 d1 d1 eepdata no p_clkin: u with p_clkin: d1 d1 d1 d1 d1 eject i i i i i enum# t t t t t gpio0 d1 d1 d0 d01 d01 t if not used as output gpio[2:1] d0 d0 d0 d01 d01 t if not used as output gpio[15:3} t t t t t l_stat - eject=0 d1 d1 d1 d01 d01 d0 msk_in i iiii oscin i iiii oscsel# i iiii p_ack64# t t t t t p_ad[63:0] t t t t t p_av dd i iiii p_av ss i iiii
section 5 reset and initialization reset pci 6540 data book, version 1.0 5-10 ? 2003 plx technology, inc. all rights reserved. p_boot i i i i i p_cbe[7:0]# t t t t t p_clkin i i i i i p_clkoe i i i i i p_clkrun# i i i i i p_cr i iiii p_devsel# t t t t t p_frame# t t t t t p_gnt# i iiii p_idsel i i i i i p_inta# (non-transparent mode) t tttt p_irdy# t tttt p_lock# t t t t t p_m66en# i iiii p_par t tttt p_par64 t tttt p_perr# t t t t t p_pllen# i i i i i p_pme# t t t t t p_req# t t t d1 d1 p_req64# t t t t t p_rstin# i i i i i table 5-2. pin state during pwrgd, p_rstin#, s_rstin#, and device hiding (continued) power-up/reset pci 6540 pins pwrgd=0, with or without clock, p_rstin#=x transparent mode, pwrgd=1 and p_rstin#=0 non-transparent mode, p_rstin#=0 and s_rstin#=0 non-universal, non-transparent mode, p_rstin#=1 and s_rstin#=0 universal non-transparent mode, p_rstin#=1 and s_rstin#=0 device hiding ejector switch open, p_rstin#=1 and s_rstin#=1
section 5 reset reset and initialization pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 5-11 5 ? reset and initialization p_rstout# d1 (transparent mode) d0 (non-transparent mode) d1 d0 d0 d0 d1 prv_dev i iiii p_serr# t t t t t p_stop# t tttt p_trdy# t t t t t p_tst[1:0] i i i i i pwrgd i iiii p_xcap i i i i i refclk i iiii s_ack64# t t t t t s_ad[63:0] t t t t t s_av dd i iiii s_av ss i iiii s_cbe[7:0]# t t t t t s_cfn# i i i i i s_clkin i i i t i ? not used s_clkin_stb i i i i i s_clko0 - s_clkoff=0 - s_clkoff=1 d01 d0 d01 d0 d01 d0 d01 d0 i i s_clko[4:1] - s_clkoff=0 - s_clkoff=1 d01 d0 d01 d0 d01 d0 d01 d0 d01 d0 s_clkoff i i i i i table 5-2. pin state during pwrgd, p_rstin#, s_rstin#, and device hiding (continued) power-up/reset pci 6540 pins pwrgd=0, with or without clock, p_rstin#=x transparent mode, pwrgd=1 and p_rstin#=0 non-transparent mode, p_rstin#=0 and s_rstin#=0 non-universal, non-transparent mode, p_rstin#=1 and s_rstin#=0 universal non-transparent mode, p_rstin#=1 and s_rstin#=0 device hiding ejector switch open, p_rstin#=1 and s_rstin#=1
section 5 reset and initialization reset pci 6540 data book, version 1.0 5-12 ? 2003 plx technology, inc. all rights reserved. s_cr i iiii s_devsel# t t (pci) d01 (pci-x) ttt s_frame# t t t t t s_gnt0# t d1 t t i s_gnt[7:1]# t d1 t t t s_idsel i i i i i s_inta# or s_clkrun# if in non-universal transparent mode t d0 if non-universal transparent mode d0ttt s_irdy# t tttt s_lock# t t t t t s_m66en# i iiii s_par t tttt s_par64 t tttt s_perr# t t t t t s_pllen# i i i i i s_pme# t t t t t s_req0# t i i i d1 s_req[7:1]# i i i i i s_req64# t d0 t t t s_rstin# i i i i i s_rstout# d0 d0 d0 d01 i d1 i in universal non-transparent mode table 5-2. pin state during pwrgd, p_rstin#, s_rstin#, and device hiding (continued) power-up/reset pci 6540 pins pwrgd=0, with or without clock, p_rstin#=x transparent mode, pwrgd=1 and p_rstin#=0 non-transparent mode, p_rstin#=0 and s_rstin#=0 non-universal, non-transparent mode, p_rstin#=1 and s_rstin#=0 universal non-transparent mode, p_rstin#=1 and s_rstin#=0 device hiding ejector switch open, p_rstin#=1 and s_rstin#=1
section 5 reset reset and initialization pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 5-13 5 ? reset and initialization s_serr# t t t t t s_stop# t t (pci) d01 (pci-x) ttt s_trdy# t t (pci) d01 (pci-x) ttt s_tst[1:0] i i i i i s_xcap_in i i i i i s_xcap_pu i i i i i test i iiii v dd_core i iiii v dd_io i iiii v ss i iiii xb_mem (non-transparent mode) i iiii legend : u = undetermined i = input only t = placed into a high-impedance state d1 = drive 1 to output d0 = drive 0 to output d01 = can drive both 0 or 1 to output table 5-2. pin state during pwrgd, p_rstin#, s_rstin#, and device hiding (continued) power-up/reset pci 6540 pins pwrgd=0, with or without clock, p_rstin#=x transparent mode, pwrgd=1 and p_rstin#=0 non-transparent mode, p_rstin#=0 and s_rstin#=0 non-universal, non-transparent mode, p_rstin#=1 and s_rstin#=0 universal non-transparent mode, p_rstin#=1 and s_rstin#=0 device hiding ejector switch open, p_rstin#=1 and s_rstin#=1
section 5 reset and initialization register initialization pci 6540 data book, version 1.0 5-14 ? 2003 plx technology, inc. all rights reserved. 5.5 register initialization the pci 6540 configuration registers may be initialized in one of three ways:  default values  serial eeprom contents  host initialization 5.5.1 default initialization after p_rstin# de-assertion or pwrgd assertion (whichever occurs later), the pci 6540 automatically checks for a valid a serial eeprom. if the serial eeprom is not valid nor present, the pci 6540 automatically loads the default values into the configuration registers. (refer to the ? value after reset ? column of the tables in section 6, ? registers. ? ) the sticky scratch registers (scratch x ; ext:00h to 07h) are cleared only if pwrgd is de-asserted. 5.5.2 serial eeprom initialization after p_rstin# de-assertion or pwrgd assertion (whichever occurs later), if the pci 6540 finds a valid serial eeprom, register values are loaded from the serial eeprom and overwrite the default values. 5.5.3 host initialization when device initialization is complete, the host system may access the appropriate registers to configure them according to system requirements. typically, registers are accessed by performing type 0 configuration accesses from the appropriate bus. the exceptions to this are the extended registers, which are accessed using the extended register index (extridx; pci:d3h) and the extended register data (extrdata; pci:d4h). for details regarding register access, refer to section 6, ? registers. ? note: not all registers may be written to or may not be available from both sides of the bridge.
pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 6-1 6 ? registers 6 registers this section describes the pci 6540 transparent and non-transparent mode pci and pci-x registers. as a transparent pci-x bridge, the pci 6540 includes the standard type 01h configuration space header as defined in p-to-p bridge r1.1 . in conventional pci mode, these registers operate as defined in this specification. if either pci 6540 interface is initialized to pci-x mode, the requirements for these registers change to meet those of pci-x r1.0b, section 8.6 . as a non-transparent pci-x bridge, the pci 6540 includes the standard type 0h configuration space header as defined in pci r2.3 . in conventional pci mode, these registers operate as defined in this specification. if either pci 6540 interface is initialized to pci-x mode, the requirements for these registers change to meet those of pci-x r1.0b, section 7 . note: registers listed with a pci offset or address are accessed by standard pci type 0 configuration accesses.
section 6 registers pci configuration register address mapping ? transparent mode pci 6540 data book, version 1.0 6-2 ? 2003 plx technology, inc. all rights reserved. 6.1 pci configuration register address mapping ? transparent mode table 6-1. pci configuration register address mapping ? transparent mode pci configuration register address to ensure software compatibility with other versions of the pci 6540 family and to ensure compatibility with future enhancements, write 0 to all unused bits. pci writable serial eeprom writable 31 24 23 16 15 8 70 00h device id* vendor id* yes yes 04h primary status primary command yes no 08h class code* revision id yes yes 0ch built-in self-test (not supported) header type* primary latency timer cache line size yes yes 10h ? 14h reserved no no 18h secondary latency timer subordinate bus number secondary bus number primary bus number yes no 1ch secondary status i/o limit i/o base yes no 20h memory limit memory base yes no 24h prefetchable memory limit prefetchable memory base yes no 28h prefetchable memory base upper 32 bits yes no 2ch prefetchable memory limit upper 32 bits yes no 30h i/o limit upper 16 bits i/o base upper 16 bits yes no 34h reserved new capability pointer no no 38h reserved no no 3ch bridge control interrupt pin reserved yes no 40h arbiter control diagnostic control chip control yes no 44h miscellaneous options timeout control primary flow- through control yes yes 48h secondary incremental prefetch count primary incremental prefetch count secondary initial prefetch count primary initial prefetch count yes yes 4ch buffer control secondary flow- through control secondary maximum prefetch count primary maximum prefetch count yes yes 50h reserved test internal arbiter control yes no 54h serial eeprom data serial eeprom address serial eeprom control yes no 58h reserved no no 5ch reserved no no 60h timer counter timer control reserved yes no 64h gpio[3:0] input data gpio[3:0] output enable gpio[3:0] output data p_serr# event disable yes no 68h clock run p_serr# status clock control yes no 6ch private memory limit private memory base yes no 70h private memory base upper 32 bits yes no 74h private memory limit upper 32 bits yes no 78h ? 98h reserved no no
section 6 pci configuration register address mapping ? transparent mode registers pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 6-3 6 ? registers notes: * writable only when the read-only registers write enable bit is set (hssrrc[7]=1; pci:9ch). refer to the individual register descriptions to determine which bits are writable. refer to the individual register descriptions to determine which bits are writable. 9ch gpio[7:4] input data gpio[7:4] output enable gpio[7:4] output data hot swap switch and ror control yes no a0h gpio[15:8] input data gpio[15:8] output enable gpio[15:8] output data power-up status yes no ach ? cch reserved no no d0h extended register index reserved yes no d4h extended register data yes no d8h reserved no no dch power management capabilities* power management next capability pointer (e4h) power management capability id (01h) yes yes e0h power management data* pmcsr bridge supports extensions power management control/status* yes yes e4h reserved hot swap control/ status (0h) hot swap next capability pointer (e8h) hot swap control (capability id) (06h) yes no e8h vpd address (0h) vpd next capability pointer (f0h) vpd capability id (03h) yes no ech vpd data (0h) yes no f0h pci-x secondary status pci-x next capability pointer (0h) pci-x capability id (07h) yes no f4h pci-x bridge status yes no f8h pci-x upstream split transaction yes no fch pci-x downstream split transaction yes no table 6-1. pci configuration register address mapping ? transparent mode (continued) pci configuration register address to ensure software compatibility with other versions of the pci 6540 family and to ensure compatibility with future enhancements, write 0 to all unused bits. pci writable serial eeprom writable 31 24 23 16 15 8 70
section 6 registers pci configuration register address mapping ? transparent mode pci 6540 data book, version 1.0 6-4 ? 2003 plx technology, inc. all rights reserved. 6.1.1 pci type 1 header registers ? transparent mode register 6-1. (pciidr; pci:00h) pci configuration id bit description read write value after reset 15:0 vendor id. identifies pci 6540 manufacturer. defaults to the pci-sig-issued plx vendor id (3388h), if a blank or no serial eeprom is present. yes only if hssrrc[7]=1; serial eeprom 3388h 31:16 device id. identifies the particular device. defaults to plx pci 6540 part number (0028h), if a blank or no serial eeprom is present. note: in non-transparent mode, defaults to 0029h. yes only if hssrrc[7]=1; serial eeprom 0028h register 6-2. (pcicr; pci:04h) primary pci command bit description read write value after reset 0 i/o space enable. controls bridge response to i/o accesses on primary interface. values: 0 = ignores i/o transactions 1 = enables response to i/o transactions yes yes 0 1 memory space enable. controls bridge response to memory access on primary interface. values: 0 = ignores memory transactions 1 = enables response to memory transactions yes yes 0 2 master enable. controls bridge ability to operate as a master on primary interface. values: 0 = does not initiate transactions on primary interface and disables response to memory or i/o transactions on secondary interface 1 = enables the bridge to operate as a master on primary interface yes yes 0 3 special cycle enable. not supported. yes no 0 4 memory write and invalidate enable. not supported. yes no 0 5 vga palette snoop enable. controls bridge response to vga-compatible palette accesses. values: 0 = ignores vga palette accesses on primary interface 1 = enables response to vga palette writes on primary interface (i/o address ad[9:0]=3c6h, 3c8h, and 3c9h) yes yes 0 6 parity error response enable. controls bridge response to parity errors. values: 0 = ignores parity errors 1 = performs normal parity checking yes yes 0 7 wait cycle control. if set to 1, the pci 6540 performs address/data stepping. yes yes 1
section 6 pci configuration register address mapping ? transparent mode registers pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 6-5 6 ? registers 8 p_serr# enable. controls the primary system error (p_serr#) pin enable. values: 0 = disables p_serr# driver 1 = enables p_serr# driver yes yes 0 9 fast back-to-back enable. controls bridge ability to generate fast back-to-back transactions to various devices on primary interface. values: 0 = no fast back-to-back transactions 1 = reserved ; pci 6540 does not generate fast back-to- back cycles yes yes 0 15:10 reserved. yes no 0h register 6-2. (pcicr; pci:04h) primary pci command (continued) bit description read write value after reset register 6-3. (pcisr; pci:06h) primary pci status bit description read write value after reset 3:0 reserved. yes no 0h 4 new capability functions support. writing 1 supports new capabilities functions. the new capability function id is located at the pci configuration space offset, determined by the new capabilities linked list pointer value at cap_ptr; pci:34h. yes no 1 5 66 mhz-capable. if set to 1, this device supports a 66 mhz pci clock environment. yes no 1 6 udf. no user-definable features. yes no 0 7 fast back-to-back capable. fast back-to-back write capable on primary port. yes no 0 8 data parity error detected. set when the following conditions are met:  p_perr# is asserted, and  command register parity error response enable bit is set (pcicr[6]=1; pci:04h) writing 1 clears bit to 0. yes yes/clr 0 10:9 devsel# timing . reads as 01b to indicate pci 6540 responds no slower than with medium timing. yes no 01b 11 signaled target abort. set by a target device when a target abort cycle occurs. writing 1 clears bit to 0. yes yes/clr 0 12 received target abort. set to 1 by the pci 6540 when transactions are terminated with target abort. writing 1 clears bit to 0. yes yes/clr 0 13 received master abort. set to 1 by the pci 6540 when transactions are terminated with master abort. writing 1 clears bit to 0. yes yes/clr 0 14 signaled system error. set when p_serr# is asserted. writing 1 clears bit to 0. yes yes/clr 0 15 detected parity error. set when a parity error is detected, regardless of the parity error response enable bit state (pcicr[6]=x; pci:04h). writing 1 clears bit to 0. yes yes/clr 0
section 6 registers pci configuration register address mapping ? transparent mode pci 6540 data book, version 1.0 6-6 ? 2003 plx technology, inc. all rights reserved. register 6-4. (pcirev; pci:08h) pci revision id bit description read write value after reset 7:0 revision id. pci 6540 revision. yes no 1h register 6-5. (pciccr; pci:09h ? 0bh) pci class code bit description read write value after reset 7:0 register level programming interface. none defined. yes only if hssrrc[7]=1; serial eeprom 0h 15:8 subclass code. pci-to-pci bridge (transparent mode) or other bridge device (non-transparent mode). yes only if hssrrc[7]=1; serial eeprom transparent mode=04h, non- transparent mode=80h 23:16 base class code. bridge device. yes only if hssrrc[7]=1; serial eeprom 06h register 6-6. (pciclsr; pci:0ch) pci cache line size bit description read write value after reset 7:0 system cache line size. specified in units of 32-bit words (dwords). only cache line sizes of a power of two are valid. maximum value is 20h. for values greater than 20h, pci 6540 operates as if pciclsr is programmed with value of 08h. used when terminating memory write and invalidate transactions. memory read prefetching is controlled by the prefetch count registers. yes yes 0h register 6-7. (pciltr; pci:0dh) primary pci bus latency timer bit description read write value after reset 7:0 primary pci bus latency timer. specifies amount of time (in units of pci bus clocks) the pci 6540, as a bus master, can burst data on the primary pci bus. yes yes 0h
section 6 pci configuration register address mapping ? transparent mode registers pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 6-7 6 ? registers register 6-8. (pcihtr; pci:0eh) pci header type bit description read write value after reset 6:0 configuration layout type. specifies register layout at offsets 10h to 3fh in configuration space. header type 0 is defined for pci devices other than pci-to-pci bridges (header type 1) and cardbus bridges (header type 2). note: default value is 0h in non-transparent mode. yes only if hssrrc[7]=1; serial eeprom 1h 7 multi-function device. value of 1 indicates multiple (up to eight) functions (logical devices), each containing its own, individually addressable configuration space, 64 dwords in size. yes only if hssrrc[7]=1; serial eeprom 0 register 6-9. (pcibistr; pci:0fh) pci built-in self-test bit description read write value after reset 7:0 built-in self-test (bist). not supported. yes no 0h
section 6 registers pci configuration register address mapping ? transparent mode pci 6540 data book, version 1.0 6-8 ? 2003 plx technology, inc. all rights reserved. register 6-10. (pcipbno; pci:18h) pci primary bus number bit description read write value after reset 7:0 primary bus number. programmed with the pci and/or pci-x bus number to which the primary bridge interface is connected. yes yes 0h register 6-11. (pcisbno; pci:19h) pci secondary bus number bit description read write value after reset 7:0 secondary bus number. programmed with the pci and/or pci-x bus number to which the secondary bridge interface is connected. yes yes 0h register 6-12. (pcisubno; pci:1ah) pci subordinate bus number bit description read write value after reset 7:0 subordinate bus number. programmed with the pci and/or pci-x bus number with the highest number subordinate to the bridge. yes yes 0h register 6-13. (pcisltr; pci:1bh) secondary pci bus latency timer bit description read write value after reset 7:0 secondary pci bus latency timer. specifies the amount of time (in units of pci bus clocks) the pci 6540, as a bus master, can burst data on the secondary pci bus. yes yes 0h
section 6 pci configuration register address mapping ? transparent mode registers pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 6-9 6 ? registers register 6-14. (pciiobar; pci:1ch) i/o base bit description read write value after reset 7:0 i/o base. specifies the i/o address range bits [15:12] base (base address bits [11:0] are assumed to be 0h). used in conjunction with the i/o limit, i/o base upper 16 bits, and i/o limit upper 16 bits registers (pciiolmt; pci:1dh, pciiobaru16; pci:30h, and pciiolmtu16; pci:32h, respectively) to specify a range of 32-bit addresses supported for pci bus i/o transactions. the lower four bits [3:0] are read-only and hardcoded to 0001b to indicate 32-bit i/o addressing support. yes yes [7:4] 1h register 6-15. (pciiolmt; pci:1dh) i/o limit bit description read write value after reset 7:0 i/o limit. specifies the upper address of the i/o address range bits [15:12] (limit address bits [11:0] are assumed to be fffh). used in conjunction with the i/o base, i/o base upper 16 bits, and i/o limit upper 16 bits registers (pciiobar; pci:1ch, pciiobaru16; pci:30h, and pciiolmtu16; pci:32h, respectively) to specify a range of 32-bit addresses supported for pci bus i/o transactions. the lower four bits [3:0] are read-only and hardcoded to 0001b to indicate 32-bit i/o addressing support. yes yes [7:4] 1h
section 6 registers pci configuration register address mapping ? transparent mode pci 6540 data book, version 1.0 6-10 ? 2003 plx technology, inc. all rights reserved. register 6-16. (pcissr; pci:1eh) secondary pci status bit description read write value after reset 4:0 reserved. yes no 0h 5 66 mhz-capable. if set to 1, the pci 6540 supports a 66 mhz pci clock environment. yes no 1 6 udf. no user-definable features. yes no 0 7 fast back-to-back capable. fast back-to-back write capable on secondary port. not supported. yes no 0 8 data parity error detected. set when the following conditions are met:  s_perr# is asserted, and  command register parity error response enable bit is set (pcicr[6]=1; pci:04h) writing 1 clears bit to 0. yes yes/clr 0 10:9 devsel# timing . reads as 01b to indicate pci 6540 responds no slower than with medium timing yes no 01b 11 signaled target abort. set by a target device when a target abort cycle occurs. writing 1 clears bit to 0. yes yes/clr 0 12 received target abort. set to 1 by the pci 6540 when transactions are terminated with target abort. writing 1 clears bit to 0. yes yes/clr 0 13 received master abort. set to 1 by the pci 6540 when transactions are terminated with master abort. writing 1 clears bit to 0. yes yes/clr 0 14 signaled system error. set when s_serr# is asserted. writing 1 clears bit to 0. yes yes/clr 0 15 detected parity error. set when a parity error is detected, regardless of the parity error response enable bit state (pcicr[6]=x]; pci:04h). writing 1 clears bit to 0. yes yes/clr 0
section 6 pci configuration register address mapping ? transparent mode registers pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 6-11 6 ? registers register 6-17. (pcimbar; pci:20h) memory base bit description read write value after reset 15:0 memory base. specifies the memory-mapped i/o address range bits [31:20] base. the upper 12 bits corresponding to [31:20] are writable. the lower 20 address bits [19:0] are assumed to be 0h. used in conjunction with the memory limit register (pcimlmt; pci:22h) to specify a range of 32-bit addresses supported for pci bus memory-mapped i/o transactions. the lower four bits [3:0] are read-only and hardcoded to 0h. yes yes [15:4] 0h register 6-18. (pcimlmt; pci:22h) memory limit bit description read write value after reset 15:0 memory limit. specifies the memory-mapped i/o address range bits [31:20] upper address. the upper 12 bits corresponding to [31:20] are writable. the lower 20 address bits [19:0] are assumed to be f_ffffh. used in conjunction with the memory base register (pcimbar; pci:20h) to specify a range of 32-bit addresses supported for pci bus memory- mapped i/o transactions. the lower four bits [3:0] are read-only and hardcoded to 0h. yes yes [15:4] 0h
section 6 registers pci configuration register address mapping ? transparent mode pci 6540 data book, version 1.0 6-12 ? 2003 plx technology, inc. all rights reserved. register 6-19. (pcipmbar; pci:24h) prefetchable memory base bit description read write value after reset 15:0 prefetchable memory base. specifies the prefetchable memory-mapped address range bits [31:20] base. the upper 12 bits corresponding to [31:20] are writable. the lower 20 address bits [19:0] are assumed to be 0h. used in conjunction with the prefetchable memory limit, prefetchable memory base upper 32 bits, and prefetchable memory limit upper 32 bits registers (pcipmlmt; pci:26h, pcipmbaru32; pci:28h, and pcipmlmtu32; pci:2ch, respectively) to specify a range of 64-bit addresses supported for prefetchable memory transactions on the pci bus. the lower four read-only bits are hardcoded to 1h, indicating 64-bit address support. yes yes [15:4] 1h register 6-20. (pcipmlmt; pci:26h) prefetchable memory limit bit description read write value after reset 15:0 prefetchable memory limit. specifies the prefetchable memory-mapped address range bits [31:20] upper address. the upper 12 bits corresponding to [31:20] are writable. the lower 20 address bits [19:0] are assumed to be f_ffffh. used in conjunction with the prefetchable memory base, prefetchable memory base upper 32 bits, and prefetchable memory limit upper 32 bits registers (pcipmbar; pci:24h, pcipmbaru32; pci:28h, and pcipmlmtu32; pci:2ch, respectively) to specify a range of 64-bit addresses supported for prefetchable memory transactions on the pci bus. the lower four read-only bits are hardcoded to 1h, indicating 64-bit address support. yes yes [15:4] 1h
section 6 pci configuration register address mapping ? transparent mode registers pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 6-13 6 ? registers register 6-21. (pcipmbaru32; pci:28h) prefetchable memory base upper 32 bits bit description read write value after reset 31:0 prefetchable memory base upper 32 bits. specifies the prefetchable memory-mapped address range bits [63:32] base. the lower 20 address bits [19:0] are assumed to be 0h. used in conjunction with the prefetchable memory base, prefetchable memory limit, and prefetchable memory limit upper 32 bits registers (pcipmbar; pci:24h, pcipmlmt; pci:26h, and pcipmlmtu32; pci:2ch, respectively) to specify a range of 64-bit addresses supported for prefetchable memory transactions on the pci bus. yes yes 0h register 6-22. (pcipmlmtu32; pci:2ch) prefetchable memory limit upper 32 bits bit description read write value after reset 31:0 prefetchable memory limit upper 32 bits. specifies the prefetchable memory-mapped address range bits [31:20] upper address. the upper 12 bits corresponding to bits [31:20] are writable. the lower 20 address bits [19:0] are assumed to be f_ffffh. used in conjunction with the prefetchable memory base, prefetchable memory limit, and prefetchable memory base upper 32 bits registers (pcipmbar; pci:24h, pcipmlmt; pci:26h, and pcipmbaru32; pci:28h, respectively) to specify a range of 64-bit addresses supported for prefetchable memory transactions on the pci bus. yes yes 0h register 6-23. (pciiobaru16; pci:30h) i/o base upper 16 bits bit description read write value after reset 15:0 i/o base upper 16 bits. specifies the i/o address range bits [31:16] base. base address bits [11:0] are assumed to be 0h. used in conjunction with the i/o base, i/o limit, and i/o limit upper 16 bits registers (pciiobar; pci:1ch, pciiolmt; pci:1dh, and pciiolmtu16; pci:32h, respectively) to specify a range of 32-bit addresses supported for pci bus i/o transactions. yes yes 0h register 6-24. (pciiolmtu16; pci:32h) i/o limit upper 16 bits bit description read write value after reset 15:0 i/o limit upper 16 bits. specifies the i/o address range bits [31:16] upper address. limit address bits [11:0] are assumed to be fffh. used in conjunction with the i/o base, i/o limit, and i/o base upper 16 bits registers (pciiobar; pci:1ch, pciiolmt; pci:1dh, and pciiobaru16; pci:30h, respectively) to specify a range of 32-bit addresses supported for pci bus i/o transactions. yes yes [7:4] 0h
section 6 registers pci configuration register address mapping ? transparent mode pci 6540 data book, version 1.0 6-14 ? 2003 plx technology, inc. all rights reserved. register 6-25. (cap_ptr; pci:34h) new capability pointer bit description read write value after reset 7:0 new capability pointer. provides an offset into pci configuration space for the power management capability location in the new capabilities linked list. yes no dch 31:8 reserved. yes no 0h register 6-26. (pciipr; pci:3dh) pci interrupt pin bit description read write value after reset 7:0 interrupt pin. indicates which interrupt pin the pci 6540 uses. the following value is valid: 0h = no interrupt pin yes no 0h register 6-27. (bcntrl; pci:3eh) bridge control bit description read write value after reset 0 parity error response enable. controls bridge response to parity errors on secondary interface. values: 0 = ignores address and data parity errors on secondary interface 1 = enables parity error reporting and detection on secondary interface yes yes 0 1 s_serr# enable. controls forwarding of s_serr# to primary interface. values: 0 = disables s_serr# forwarding to primary 1 = enables s_serr# forwarding to primary yes yes 0 2 isa enable. controls bridge response to isa i/o addresses, which is limited to the first 64 kb. values: 0 = forwards i/o addresses in the range defined by the i/o base and i/o limit registers (pciiobar; pci:1ch and pciiolmt; pci:1dh, respectively). 1 = blocks forwarding of isa i/o addresses in the range defined by the i/o base and i/o limit registers in the first 64 kb of i/o space that address the last 768 bytes in each 1-kb block. secondary i/o transactions are forwarded upstream, if the address falls within the last 768 bytes in each 1-kb block. command configuration register master enable bit must also be set (pcicr[2]=1; pci:04h) to enable isa. yes yes 0 3 vga enable. controls bridge response to vga-compatible addresses. values: 0 = does not forward vga-compatible memory nor i/o addresses from primary to secondary 1 = forwards vga-compatible memory and i/o address from primary to secondary, regardless of other settings yes yes 0
section 6 pci configuration register address mapping ? transparent mode registers pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 6-15 6 ? registers 4 reserved. yes no 0 5 master abort mode. controls bridge behavior in response to master aborts on secondary interface. values: 0 = does not report master aborts (return ffff_ffffh on reads nor discard data on writes). 1 = reports master aborts by signaling target abort. if the master abort is the result of a primary-to-secondary posted write cycle, p_serr# is asserted (pcicr[8]=1; pci:04h). note: during lock cycles, pci 6540 ignores this bit, and completes the cycle as a target abort. yes yes 0 6 secondary reset. forces s_rstout# assertion on secondary interface. values: 0 = does not force s_rstout# assertion 1 = forces s_rstout# assertion yes yes 0 7 fast back-to-back enable. controls bridge ability to generate fast back-to-back transactions to various devices on secondary interface. values: 0 = no fast back-to-back transaction 1 = reserved ; pci 6540 does not generate fast back-to- back cycles yes yes 0 8 primary master timeout. sets the maximum number of pci clocks for an initiator on the primary bus to repeat the delayed transaction request. values: 0 = timeout after 2 15 pci clocks 1 = timeout after 2 10 pci clocks yes yes 0 9 secondary master timeout. sets the maximum number of pci clocks for an initiator on the secondary bus to repeat the delayed transaction request. values: 0 = timeout after 2 15 pci clocks 1 = timeout after 2 10 pci clocks yes yes 0 10 master timeout status. set to 1 when primary or secondary master timeout occurs. writing 1 clears bit to 0. yes yes/clr 0 11 master timeout p_serr# enable. enable p_serr# assertion during master timeout. values: 0 = p_serr# not asserted on master timeout 1 = p_serr# asserted on primary or secondary master timeout yes yes 0 15:12 reserved. yes no 0h register 6-27. (bcntrl; pci:3eh) bridge control (continued) bit description read write value after reset
section 6 registers pci configuration register address mapping ? transparent mode pci 6540 data book, version 1.0 6-16 ? 2003 plx technology, inc. all rights reserved. 6.1.2 device-specific registers ? transparent mode 6.1.2.1 chip, diagnostic, and arbiter control registers register 6-28. (ccntrl; pci:40h) chip control bit description read write value after reset 0 reserved. yes no 0 1 memory write disconnect control. controls when pci 6540, as a target, disconnects memory transactions. values: 0 = disconnects on queue full or on a 4-kb boundary 1 = disconnects on a cache line boundary, when the queue fills, or on a 4-kb boundary yes yes 0 2 private memory enable (transparent mode). the memory space can be programmed using the private memory base and limit registers (pvtmbar; pci:6ch and pvtlmt; pci:6eh, respectively). if the limit is smaller than the base, the private memory space is disabled regardless of bit setting. when enabled, the primary port cannot access primary and secondary private memory space through the bridge and secondary ports do not respond to memory cycles addressing the private memory space. resets to the value presented on the prv_dev input pin. after reset, bit can be reprogrammed. values: 0 = disables private memory block 1 = enables private memory block yes yes prv_dev 3 private device enable. pci 6540 can reroute secondary idsels using s_ad[23:16] for private devices. a type 1 configuration access on the primary bus (which would normally result in the assertion of an idsel connected to s_ad[23:16]) is routed to s_ad24. if there is no device on s_ad24, the rerouted type 1 configuration cycles result in a master abort. re-routing allows s_ad[23:16] to be used for secondary private devices. this mechanism has no effect in non-transparent mode. resets to the value presented in the prv_dev input pin. after reset, bit can be reprogrammed. values: 0 = does not re-route idsel assertions 1 = enables the rerouting of the secondary idsels s_ad[23:16] to s_ad24 yes yes prv_dev 4 secondary bus prefetch disable. controls pci 6540 ability to prefetch during downstream memory read transactions. values: 0 = prefetches and does not forward byte enables during memory read transactions. 1 = requests only 1 dword from the target during memory read transactions and forwards byte enables. pci 6540 returns a target disconnect to the requesting master on the first data transfer. memory read line and memory read multiple transactions remain prefetchable. yes yes 0 7:5 reserved. yes no 000b
section 6 pci configuration register address mapping ? transparent mode registers pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 6-17 6 ? registers register 6-29. (dcntrl; pci:41h) diagnostic control bit description read write value after reset 0 chip reset. chip and secondary bus reset. setting bit activates full chip reset, asserts s_rstout#, and forces the bridge control register secondary reset bit to be set (bcntrl[6]=1; pci:3eh). after resetting the pci 6540 registers, bit is cleared; however, bcntrl[6] remains set to 1. writing 0 has no effect. yes yes 0 2:1 test mode. yes yes 00b 3 secondary reset output mask. not supported .yesno0 7:4 reserved. yes no 0h register 6-30. (acntrl; pci:42h) arbiter control bit description read write value after reset 7:0 arbiter control. each bit controls whether a secondary bus master is assigned to the high- or low-priority group. bits correspond to request inputs s_req[7:0]#, respectively. value of 1h assigns the bus master to the high-priority group. yes yes 0h 8 reserved. yes yes 0 9 pci 6540 priority. defines whether pci 6540 secondary port is in the high- or low-priority group. 0 = low-priority group 1 = high-priority group yes yes 1 11:10 reserved. yes no 00b 12 primary port ordering rule. reserved and must be set to 0. yes yes 0 13 secondary port ordering rule . reserved and must be set to 0. yes yes 0 14 upstream 64-bit cycle control. reserved and must be set to 0. yes yes 0 15 downstream 64-bit cycle control. reserved and must be set to 0. yes yes 0
section 6 registers pci configuration register address mapping ? transparent mode pci 6540 data book, version 1.0 6-18 ? 2003 plx technology, inc. all rights reserved. 6.1.2.2 primary flow-through control register register 6-31. (pftcr; pci:44h) primary flow-through control bit description read write value after reset 2:0 primary posted write-completion wait count. maximum number of clocks the pci 6540 waits for posted write data from the initiator, if delivering write data in flow-through mode, with the internal post write queues almost empty. if the count is exceeded, without additional data from the initiator, the cycle to the target is terminated and later completed. values: 000b = de-asserts s_irdy# and waits seven clocks for data on the primary bus before terminating cycle (same as 111b) 001b = de-asserts s_irdy# and waits one clock for data on the primary bus before terminating cycle ? 111b = de-asserts s_irdy# and waits seven clocks for data on the primary bus before terminating cycle yes yes; serial eeprom 000b 3 reserved. yes no 0 6:4 primary delayed read completion wait count. maximum number of clocks the pci 6540 waits for delayed read data from the target if returning read data in flow-through mode, and the internal delayed read queue is almost full. if the count is exceeded without additional space in the queue, the cycle to the target is terminated, and completed when the initiator retries the remainder of the cycle. values: 000b = de-asserts s_irdy# and waits seven clocks for further data to be transferred to the primary bus before terminating cycle (same as 111b) 001b = de-asserts s_irdy# and waits one clock for additional space to be transferred to the primary bus before terminating cycle ? 111b = de-asserts s_irdy# and waits seven clocks for additional space to be transferred to the primary bus before terminating cycle yes yes; serial eeprom 000b 7 reserved. yes no 0
section 6 pci configuration register address mapping ? transparent mode registers pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 6-19 6 ? registers 6.1.2.3 timeout control register register 6-32. (tocntrl; pci:45h) timeout control bit description read write value after reset 2:0 maximum retry counter control. controls the maximum number of times the pci 6540 retries a cycle before signaling a timeout. timeout applies to read/write retries and can be enabled to trigger serr# on the primary or secondary port, depending on the serr# events enabled. maximum number of retries to timeout: 000b = 2 24 001b = 2 18 010b = 2 12 011b = 2 6 111b = 2 0 yes yes; serial eeprom 000b 3 reserved. yes no 0 5:4 primary master timeout divider. provides additional options for the primary master timeout. in addition to its original setting in the bridge control register (bcntrl[8]; pci:3eh), the timeout counter can optionally be divided by up to 256: 00b = counter ? primary master timeout / 1 01b = timeout counter ? primary master timeout / 8 10b = timeout counter ? primary master timeout / 16 11b = timeout counter ? primary master timeout / 256 bcntrl[8] can set the primary master timeout to 32k (default) or 1k clock cycles. yes yes; serial eeprom 00b 7:6 secondary master timeout divider. provides additional options for the secondary master timeout. in addition to its original setting in the bridge control register (bcntrl[9]; pci:3eh), the timeout counter can optionally be divided by up to 256: 00b = counter ? secondary master timeout / 1 01b = timeout counter ? secondary master timeout / 8 10b = timeout counter ? secondary master timeout / 16 11b = timeout counter ? secondary master timeout / 256 bcntrl[9] can set the secondary master timeout to 32k (default) or 1k clock cycles. yes yes; serial eeprom 00b
section 6 registers pci configuration register address mapping ? transparent mode pci 6540 data book, version 1.0 6-20 ? 2003 plx technology, inc. all rights reserved. 6.1.2.4 miscellaneous options register register 6-33. (mscopt; pci:46h) miscellaneous options bit description read write value after reset 0 write completion wait for perr#. if set to 1, pci 6540 waits for target perr# status before completing a delayed write transaction to the initiator. yes yes; serial eeprom 0 1 read completion wait for par. if set to 1, pci 6540 waits for target par status before completing a delayed read transaction to the initiator. yes yes; serial eeprom 0 2 drt out-of-order enable. if set to 1, pci 6540 may return delayed read transactions in a different order than requested. otherwise, delayed read transactions are returned in the same order as requested. yes yes; serial eeprom 0 3 generate parity enable. values: 0 = passes along the cycle par/par64, as stored in the internal buffers 1 = pci 6540, as a master, generates par/par64 to cycles traveling across the bridge yes yes; serial eeprom 0
section 6 pci configuration register address mapping ? transparent mode registers pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 6-21 6 ? registers 6:4 address step control. during type 0 configuration cycles, pci 6540 drives the address for the number of clocks specified by these bits, before asserting frame#. defaults to 001b in conventional pci mode. in pci-x mode, these bits have no effect and address stepping is hardcoded to four clocks. values: 000b = concurrently asserts frame# and drives the address on the bus 001b = asserts frame# one clock after driving the address on the bus ? 111b = asserts frame# seven clocks after driving the address on the bus yes yes; serial eeprom 001b 8:7 reserved. yes no 00b 9 prefetch early termination. values: 0 = terminates prefetching at the initial prefetch count if flow through is not achieved, and another prefetching read cycle is accepted by the pci 6540 1 = completes prefetching as programmed by the prefetch count registers, regardless of other outstanding prefetchable reads in the transaction queue yes yes; serial eeprom 0 10 read minimum enable. if set to 1, pci 6540 only initiates read cycles if there is sufficient space available in the fifo as required by the prefetch count registers. yes yes; serial eeprom 0 15, 11 force 64-bit control. if set and the target supports 64-bit transfers, 32-bit prefetchable reads or 32-bit posted memory write cycles on one side are converted to 64-bit cycles on completion at the target bus. if set to 00b, cycles are not converted. values: 00b = disable (default) 01b = convert to 64-bit command on both ports 10b = convert to 64-bit command on secondary port 11b = convert to 64-bit command on primary port yes yes; serial eeprom 0 12 memory write and invalidate control. values: 0 = retries memory write and invalidate commands if there is insufficient space for one cache line of data in the internal queues. 1 = passes memory write and invalidate commands if there are one or more cache lines of fifo space available. if there is insufficient space, completes as a memory write cycle. yes yes; serial eeprom 0 13 primary lock enable. if set to 1, pci 6540 follows the lock protocol on primary interface; otherwise, lock is ignored. yes yes; serial eeprom 0 14 secondary lock enable. if set to 1, pci 6540 follows the lock protocol on secondary interface; otherwise, lock is ignored. yes yes; serial eeprom 0 register 6-33. (mscopt; pci:46h) miscellaneous options (continued) bit description read write value after reset
section 6 registers pci configuration register address mapping ? transparent mode pci 6540 data book, version 1.0 6-22 ? 2003 plx technology, inc. all rights reserved. 6.1.2.5 prefetch control registers registers 48h to 4eh are the flow-through prefetch control registers, which are used to fine-tune the pci 6540 memory read prefetch behavior. (refer to section 18, ? pci flow-through optimization, ? for further details regarding these registers.) these registers apply only if there are one or more ports operating in conventional pci mode. register 6-34. (pitlpcnt; pci:48h) primary initial prefetch count bit description read write value after reset 0 reserved. yes no 0 2:1 pci-x primary initial prefetch count. when the primary bus is in pci-x mode, these bits control the initial prefetch count on the primary bus during reads to prefetchable memory space. value defines the cache line multiples for the initial prefetch count. prefetch as follows: 00b = 1 cache line (size defined by pciclsr; pci:0ch) 01b = 2 cache lines 10b = 4 cache lines 11b = 8 cache lines the primary pci-x 16 cache line prefetch bit (pincpcnt[1]; pci:4ah) enables prefetch of 16 cache lines. yes yes; serial eeprom 00b 5:3 pci primary initial prefetch count. when the primary bus is in conventional pci mode, controls the initial prefetch count on the primary bus during reads to prefetchable memory space. prefetch as follows: 001b = 08h dwords 010b = 10h dwords 101b = 20h dwords other values are reserved . yes yes; serial eeprom 001b 7:6 reserved. yes no 00b
section 6 pci configuration register address mapping ? transparent mode registers pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 6-23 6 ? registers register 6-35. (sitlpcnt; pci:49h) secondary initial prefetch count bit description read write value after reset 0 reserved. yes no 0 2:1 pci-x secondary initial prefetch count. when the secondary bus is in pci-x mode, these bits control the initial prefetch count on the secondary bus during reads initiated from the primary port. value defines the cache line multiples for the initial prefetch count. prefetch as follows: 00b = 1 cache line (size defined by pciclsr; pci:0ch) 01b = 2 cache lines 10b = 4 cache lines 11b = 8 cache lines the secondary pci-x 16 cache line prefetch bit (sincpcnt[1]; pci:4bh) enables prefetch of 16 cache lines. yes yes; serial eeprom 00b 5:3 pci secondary initial prefetch count. when the secondary bus is in conventional pci mode, these bits control the initial prefetch count on the secondary bus during reads initiated from the primary port. prefetch as follows: 001b = 08h dwords 010b = 10h dwords 101b = 20h dwords other values are reserved . yes yes; serial eeprom 001b 7:6 reserved. yes no 00b register 6-36. (pincpcnt; pci:4ah) primary incremental prefetch count bit description read write value after reset 0 reserved. yes no 0 1 primary pci-x 16 cache line prefetch. value: 1 = enables primary pci-x port to prefetch 16 cache lines. when set, the pci-x primary initial prefetch count bits are ignored (pitlpcnt[2:1]; pci:48h). yes yes; serial eeprom 0 5:2 primary incremental prefetch count. applies only to primary port conventional pci mode operation. these bits control the incremental read prefetch count. when an entry ? s remaining prefetch dword count falls below this value, the bridge prefetches additional primary incremental prefetch count dwords. value is specified as a multiple of 4 x dwords. the register value must not exceed half the value programmed in the primary maximum prefetch count register (pmaxpcnt; pci:4ch); otherwise, no incremental prefetch is performed. prefetch as follows: 0000b = no incremental prefetch 0001b = 04h dwords 0010b = 08h dwords 0011b = 0ch dwords ? 1111b = 3ch dwords yes yes; serial eeprom 0000b 7:6 reserved. yes no 00b
section 6 registers pci configuration register address mapping ? transparent mode pci 6540 data book, version 1.0 6-24 ? 2003 plx technology, inc. all rights reserved. register 6-37. (sincpcnt; pci:4bh) secondary incremental prefetch count bit description read write value after reset 0 reserved. yes no 0 1 secondary pci-x 16 cache line prefetch. value: 1 = enables secondary pci-x port to prefetch 16 cache lines. when set, the pci-x secondary initial prefetch count bits are ignored (sitlpcnt[2:1]; pci:49h). yes yes; serial eeprom 0 5:2 secondary incremental prefetch count. applies only to secondary port conventional pci mode operation. these bits control the incremental read prefetch count. when an entry ? s remaining prefetch dword count falls below this value, the bridge prefetches additional secondary incremental prefetch count dwords. value is specified as a multiple of 4 x dwords. the register value must not exceed half the value programmed in the secondary maximum prefetch count register (smaxpcnt; pci:4dh); otherwise, no incremental prefetch is performed. prefetch as follows: 0000b = no incremental prefetch 0001b = 04h dwords 0010b = 08h dwords 0011b = 0ch dwords ? 1111b = 3ch dwords yes yes; serial eeprom 0000b 7:6 reserved. yes no 00b
section 6 pci configuration register address mapping ? transparent mode registers pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 6-25 6 ? registers register 6-38. (pmaxpcnt; pci:4ch) primary maximum prefetch count bit description read write value after reset 5:0 primary maximum prefetch count. limits the cumulative maximum count of prefetchable dwords allocated to one entry on the primary bus when flow through for that entry is not achieved. value should be an even number. bit 0 is read- only and always 0. value is specified in dwords, except if 0 value is programmed, which sets the primary maximum prefetch count to its maximum value of 256 bytes. this feature applies only to pci-to-pci bridging. a pci read cycle causes a pci request for the maximum count data. yes yes [5:1]; serial eeprom 20h 7:6 reserved. yes no 00b register 6-39. (smaxpcnt; pci:4dh) secondary maximum prefetch count bit description read write value after reset 5:0 secondary maximum prefetch count. limits the cumulative maximum count of prefetchable dwords allocated to one entry on the secondary bus when flow through for that entry is not achieved. value should be an even number. bit 0 is read- only and always 0. value is specified in dwords, except if 0 value is programmed, which sets the secondary maximum prefetch count to its maximum value of 256 bytes. this feature applies only to pci-to-pci bridging. a pci read cycle causes a pci request for the maximum count data. yes yes [5:1]; serial eeprom 20h 7:6 reserved. yes no 00b
section 6 registers pci configuration register address mapping ? transparent mode pci 6540 data book, version 1.0 6-26 ? 2003 plx technology, inc. all rights reserved. 6.1.2.6 secondary flow-through control register register 6-40. (sftcr; pci:4eh) secondary flow-through control bit description read write value after reset 2:0 secondary posted write completion wait count. maximum number of clocks the pci 6540 waits for posted write data from the initiator if delivering write data in flow- through mode and the internal post write queues are almost empty. if the count is exceeded without additional data from the initiator, the cycle to the target is terminated and later completed. values: 000b = de-asserts p_irdy# and waits seven clocks for data on the secondary bus, before terminating cycle (same as 111b) 001b = de-asserts p_irdy# and waits one clock for data on the secondary bus, before terminating cycle ? 111b = de-asserts p_irdy# and waits seven clocks for data on the secondary bus, before terminating cycle yes yes; serial eeprom 000b 3 reserved. yes no 0 6:4 secondary delayed read completion wait count. maximum number of clocks the pci 6540 waits for delayed read data from the target, if returning read data in flow-through mode and the internal delayed read queue is almost full. if the count is exceeded without additional space in the queue, the cycle to target is terminated, and completed when initiator retries the remainder of the cycle. values: 000b = de-asserts p_irdy# and waits seven clocks for additional space to be transferred to the secondary bus before terminating cycle (same as 111b) 001b = de-asserts p_irdy# and waits one clock for additional space to be transferred to the secondary bus before terminating cycle ? 111b = de-asserts p_irdy# and waits seven clocks for additional space to be transferred to the secondary bus before terminating cycle yes yes; serial eeprom 000b 7 reserved. yes no 0
section 6 pci configuration register address mapping ? transparent mode registers pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 6-27 6 ? registers 6.1.2.7 buffer and internal arbiter control registers note: smart_prefetch settings apply only to transparent mode pci-to-pci, pci-to-pci-x, or pci-x-to-pci bridging , where the initiator issues a pci burst prefetchable read. register 6-41. (bufcr; pci:4fh) buffer control bit description read write value after reset 0 reserved. yes no 0 1 smart prefetch enable. the amount of data prefetched is defined in the maximum prefetch count registers (pmaxpcnt; pci:4ch and smaxpcnt; pci:4dh). values after a prefetch command: 0 = remaining prefetched data is discarded upon completion of the current read command. 1 = remaining prefetched data is not discarded, but remains available for the next read command with consecutive address. the prefetched data is only discarded upon a timeout. the timeout period can be programmed using the smart prefetch timeout bits (bufcr[6:5]; pci:4fh). yes yes 0 2 split fifo enable. buffer split for individual data entries. values: 0 = entire fifo shared among entries and the fifo is undedicated 1 = fifo divided into four equal parts, to be dedicated to each entry for split completions yes yes 0 4:3 reserved. yes no 00b 6:5 smart prefetch timeout. smart prefetch timeout affects only pci-to-pci, pci-to-pci-x, or pci-x-to-pci bridging applications. prefetches cannot cross the 4-kb address boundary. when smart prefetch is enabled, the prefetched data is only discarded upon a timeout. the timeout periods available are after: 00b = 32 pci clocks 01b = 64 pci clocks 10b = 128 pci clocks 11b = 256 pci clocks yes yes 11b 7 reserved. yes no 0
section 6 registers pci configuration register address mapping ? transparent mode pci 6540 data book, version 1.0 6-28 ? 2003 plx technology, inc. all rights reserved. register 6-42. (iacntrl; pci:50h) internal arbiter control bit description read write value after reset 0 low-priority group fixed arbitration. if set to 1, the low-priority group uses fixed priority arbitration; otherwise, rotating priority arbitration is used. yes yes 0 1 low-priority group arbitration order. valid only when the low-priority arbitration group is set to a fixed arbitration scheme. values: 0 = priority decreases with bus master number. ( for example , assuming master 2 is set as the highest priority master, master 3 retains higher priority than master 4.) 1 = priority increases with bus master number. ( for example , assuming master 2 is set as the highest priority master, master 4 retains higher priority than master 3. this order is relative to the master with the highest priority for this group, as specified in iacntrl[7:4]. yes yes 0 2 high-priority group fixed arbitration. if set to 1, the high-priority group uses the fixed priority arbitration; otherwise, rotating priority arbitration is used . yes yes 0 3 high-priority group arbitration order. valid only when the high-priority arbitration group is set to a fixed arbitration scheme. values: 0 = priority decreases with bus master number. ( for example , assuming master 2 is set as the highest priority master, master 3 retains higher priority than master 4.) 1 = priority increases with bus master number. ( for example, assuming master 2 is set as the highest priority master, master 4 retains higher priority than master 3.) this order is relative to the master with the highest priority for this group, as specified in iacntrl[11:8]. yes yes 0 7:4 highest priority master in low-priority group. controls which master in the low-priority group retain the highest priority. valid only if the group uses the fixed arbitration scheme. values: 0000b = master 0 retains highest priority 0001b = master 1 retains highest priority ? 1000b = pci 6540 retains highest priority 1001b ? 1111b = reserved yes yes 0000b 11:8 highest priority master in high-priority group. controls which master in the high-priority group retains the highest priority. valid only if the group uses the fixed arbitration scheme. values: 0000b = master 0 retains highest priority 0001b = master 1 retains highest priority ? 1000b = pci 6540 retains highest priority 1001b ? 1111b = reserved yes yes 0000b 15:12 bus grant parking control. controls bus grant behavior during idle. value: 0h = indicates the last master granted is parked all other values are reserved. yes no 0h
section 6 pci configuration register address mapping ? transparent mode registers pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 6-29 6 ? registers 6.1.2.8 test and serial eeprom registers register 6-43. (test; pci:52h) test bit description read write value after reset 0 serial eeprom autoload control. if set to 1, disables serial eeprom autoload. yes yes 0 1 fast serial eeprom autoload. if set to 1, speeds up serial eeprom autoload. yes yes 0 2 serial eeprom autoload status. serial eeprom autoload status is set to 1 during autoload. yes no status of serial eeprom autoload 3 s_pll_test. when p_clkoe input pin is set to 1 and this bit is set to 1, s_clko4 (derived from s_clkin) is divided by 4. yes yes 0 4 dev64#. reflects dev64# pin status. yes no dev64# 5 s_cfn#. reflects s_cfn# pin status. yes no s_cfn# 6 trans#. reflects trans# pin status. yes no trans# 7 u_mode. reflects u_mode pin status. yes no u_mode register 6-44. (eepcntrl; pci:54h) serial eeprom control bit description read write value after reset 0 start. starts serial eeprom read or write cycle. bit is cleared when serial eeprom load completes. yes yes 0 1 serial eeprom command. controls commands sent to the serial eeprom. values: 0 = read 1 = write yes yes 0 2 serial eeprom error. set to 1 if serial eeprom ack was not received during serial eeprom cycle. yes no ? 3 serial eeprom autoload successful. set to 1 if serial eeprom autoload occurred successfully after reset, with appropriate configuration registers loaded with the values programmed in the serial eeprom. if 0, the serial eeprom autoload was unsuccessful or disabled. yes no ? 5:4 reserved. yes no 00b 7:6 serial eeprom clock rate. controls the serial eeprom clock frequency. the serial eeprom clock is derived from the primary pci clock. values: 00b = pclk / 1024 01b = pclk / 512 10b = pclk / 128 11b = pclk / 16 (test mode) yes yes 01b
section 6 registers pci configuration register address mapping ? transparent mode pci 6540 data book, version 1.0 6-30 ? 2003 plx technology, inc. all rights reserved. register 6-45. (eepaddr; pci:55h) serial eeprom address bit description read write value after reset 0 reserved . yes no ? 7:1 serial eeprom address. word address for the serial eeprom cycle. yes yes ? register 6-46. (eepdata; pci:56h) serial eeprom data bit description read write value after reset 15:0 serial eeprom data. contains data to be written to the serial eeprom. during reads, contains data received from the serial eeprom after a read cycle completes. yes yes ?
section 6 pci configuration register address mapping ? transparent mode registers pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 6-31 6 ? registers 6.1.2.9 timer registers register 6-47. (tmrcntrl; pci:61h) timer control bit description read write value after reset 0 timer enable. set to start measurement of the approximate bus frequency on the primary or secondary interface. by default, bit is 0, and must be set to 1 to start the measurement. when set to 0 and then to 1, pci 6540 starts counting up until it reaches the set count period. during this counting period, pci 6540 timer counter (tmrcnt; pci:62h) counts the number of timer counter clocks. yes yes 0 2:1 timer counter clock source select. values: 00b = primary pci clock (p_clkin) 01b = secondary pci clock (s_clkin) 10b, 11b = reserved yes yes 00b 3 timer stop. timer stopped status bit. when the measurement is finished, this bit is set to 0, and then to 1. when starting a new measurement, this bit automatically restores to 0. values: 0 = timer running 1 = timer stopped yes no 0 5:4 count period. values: 00b = 16 reference clock high states 01b = 32 reference clock high states 10b = 64 reference clock high states 11b = 128 reference clock high states yes yes 00b 7:6 reserved. yes no 00b register 6-48. (tmrcnt; pci:62h) timer counter bit description read write value after reset 15:0 timer counter. automatically stops upon the count period setting in the timer control register (tmrcntrl[7:4]; pci:61h). this counter can be enabled by setting the timer enable bit (tmrcntrl[0]; pci:61h) first to 0, and then to 1. yes no 0h
section 6 registers pci configuration register address mapping ? transparent mode pci 6540 data book, version 1.0 6-32 ? 2003 plx technology, inc. all rights reserved. 6.1.2.10 primary system error event register register 6-49. (pserred; pci:64h) p_serr# event disable bit description read write value after reset 0 reserved. yes no 0 1 posted write parity error. controls pci 6540 ability to assert p_serr# when a data parity error is detected on the target bus during a posted write transaction. p_serr# is asserted if this event occurs when bit is 0 and command register p_serr# enable bit is set (pcicr[8]=1; pci:04h). yes yes 0 2 posted memory write non-delivery. controls pci 6540 ability to assert p_serr# when it is unable to deliver posted write data after 2 24 attempts [or programmed maximum retry count (tocntrl[2:0]; pci:45h)]. p_serr# is asserted if this event occurs when bit is 0 and command register p_serr# enable bit is set (pcicr[8]=1; pci:04h). yes yes 0 3 target abort during posted write. controls pci 6540 ability to assert p_serr# when it receives a target abort while attempting to deliver posted write data. p_serr# is asserted if this event occurs when bit is 0 and command register p_serr# enable bit is set (pcicr[8]=1; pci:04h). yes yes 0 4 master abort on posted write. controls pci 6540 ability to assert p_serr# when it receives a master abort while attempting to deliver posted write data. p_serr# is asserted if this event occurs when bit is 0 and command register p_serr# enable bit is set (pcicr[8]=1; pci:04h). yes yes 0 5 delayed configuration or i/o write non-delivery. controls pci 6540 ability to assert p_serr# when it is unable to deliver delayed write data after 2 24 attempts [or programmed maximum retry count (tocntrl[2:0]; pci:45h)]. p_serr# is asserted if this event occurs when bit is 0 and command register p_serr# enable bit is set (pcicr[8]=1; pci:04h). yes yes 0 6 delayed read-no data from target. controls pci 6540 ability to assert p_serr# when it is unable to transfer read data from the target after 2 24 attempts [or programmed maximum retry count (tocntrl[2:0]; pci:45h)]. p_serr# is asserted if this event occurs when bit is 0 and command register p_serr# enable bit is set (pcicr[8]=1; pci:04h). yes yes 0 7 reserved. yes no 0
section 6 pci configuration register address mapping ? transparent mode registers pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 6-33 6 ? registers 6.1.2.11 gpio[3:0] registers register 6-50. (gpiood[3:0]; pci:65h) gpio[3:0] output data bit description read write value after reset 3:0 gpio[3:0] output data write 1 to clear. writing 1 to these bits drives the corresponding signal low on the gpio[3:0] bus, if the signal is programmed as an output. writing 0 has no effect. read returns the last written value. yes yes/clr 0h 7:4 gpio[3:0] output data write 1 to set. writing 1 to these bits drives the corresponding signal high on the gpio[3:0] bus, if the signal is programmed as an output. writing 0 has no effect. read returns the last written value. yes yes/set high 0h register 6-51. (gpiooe[3:0]; pci:66h) gpio[3:0] output enable bit description read write value after reset 3:0 gpio[3:0] output enable write 1 to clear. writing 1 to these bits configures the corresponding signal on the gpio[3:0] bus as an input. writing 0 has no effect. read returns the last written value. yes yes/clr 0h 7:4 gpio[3:0] output enable write 1 to set. writing 1 to these bits configures the corresponding signal on the gpio[3:0] bus as an output. writing 0 has no effect. read returns the last written value. yes yes/set high 0h register 6-52. (gpioid[3:0]; pci:67h) gpio[3:0] input data bit description read write value after reset 3:0 reserved. yes no 0h 7:4 gpio[3:0] input data. this read-only register reads gpio[3:0] pins state. the state is updated on the pci clock cycle, following a change in gpio[3:0] state. yes no ?
section 6 registers pci configuration register address mapping ? transparent mode pci 6540 data book, version 1.0 6-34 ? 2003 plx technology, inc. all rights reserved. 6.1.2.12 clock control register 6.1.2.13 primary system error status register register 6-53. (clkcntrl; pci:68h) clock control bit description read write value after reset 1:0 clock 0 disable . if either bit is 0, s_clko0 is enabled. when both bits are 1, s_clko0 is disabled. defaults to 00b if msk_in=1. yes yes 00b 3:2 clock 1 disable. if either bit is 0, s_clko1 is enabled. when both bits are 1, s_clko1 is disabled. yes yes 00b 5:4 clock 2 disable. if either bit is 0, s_clko2 is enabled. when both bits are 1, s_clko2 is disabled. yes yes 00b 7:6 clock 3 disable. if either bit is 0, s_clko3 is enabled. when both bits are 1, s_clko3 is disabled. yes yes 00b 8 clock 4 disable. if 0, s_clko4 is enabled. when 1, s_clko4 is disabled. yes yes 0 15:9 reserved. yes no 0h register 6-54. (pserrsr; pci:6ah) p_serr# status bit description read write value after reset 0 address parity error. p_serr# is asserted because an address parity error occurred on either side of the bridge. yes yes/clr 0 1 posted write data parity error. p_serr# is asserted because a posted write data parity error occurred on the target bus. yes yes/clr 0 2 post write non-delivery. p_serr# is asserted because pci 6540 was unable to deliver posted write data to the target before the timeout counter expired. yes yes/clr 0 3 target abort during posted write. p_serr# is asserted because pci 6540 received a target abort when delivering posted write data. yes yes/clr 0 4 master abort during posted write. p_serr# is asserted because pci 6540 received a master abort when delivering posted write data. yes yes/clr 0 5 delayed write non-delivery. p_serr# is asserted because pci 6540 was unable to deliver delayed write data before the timeout counter expired. yes yes/clr 0 6 delayed read failed. p_serr# is asserted because pci 6540 was unable to read data from the target before the timeout counter expired. yes yes/clr 0 7 delayed transaction master timeout. p_serr# is asserted because a master did not repeat a read or write transaction before the initiator bus master timeout counter expired. yes yes/clr 0
section 6 pci configuration register address mapping ? transparent mode registers pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 6-35 6 ? registers 6.1.2.14 clock run register register 6-55. (clkrun; pci:6bh) clock run bit description read write value after reset 0 secondary clock stop status. values: 0 = secondary clock not stopped 1 = secondary clock stopped yes yes 0 1 s_clkrun# enable. controls the s_clkrun# pin. values: 0 = disables s_clkrun# pin 1 = enables s_clkrun# pin yes yes 0 2 primary clock stop. values: 0 = allows primary clock to stop, if secondary clock is stopped 1 = keeps primary clock running yes yes 0 3 p_clkrun# enable. controls the p_clkrun# pin. values: 0 = disables p_clkrun# pin 1 = enables p_clkrun# pin yes yes 0 4 clkrun mode. values: 0 = stops the secondary clock only on request from the primary bus 1 = stops the secondary clock when the secondary bus is idle and there are no requests from the primary bus yes yes 0 7:5 reserved. yes no 000b
section 6 registers pci configuration register address mapping ? transparent mode pci 6540 data book, version 1.0 6-36 ? 2003 plx technology, inc. all rights reserved. 6.1.2.15 private memory registers private memory can be enabled by way of the chip control register (ccntrl[2]; pci:40h) or by using the prv_dev input pin. register 6-56. (pvtmbar; pci:6ch) private memory base bit description read write value after reset 15:0 private memory base. defines the private memory address range base address. the upper 12 bits corresponding to address bits [31:20] are writable and reset to 0h. the lower 20 address bits [19:0] are assumed to be 0h. the lower four bits are read-only and set to 0001b. yes yes [15:4] 1h register 6-57. (pvtmlmt; pci:6eh) private memory limit bit description read write value after reset 15:0 private memory limit. defines the private memory address range upper limit address. the upper 12 bits corresponding to address bits [31:20] are writable and reset to 0h. the lower 20 address bits [19:0] are assumed to be f_ffffh. the lower four bits are read-only and set to 0h. yes yes [15:4] 0h register 6-58. (pvtmbaru32; pci:70h) private memory base upper 32 bits bit description read write value after reset 31:0 private memory base upper 32 bits . defines the upper 32-bit (bits [63:32]) memory base address of the private memory address range. yes yes [15:4] 1h register 6-59. (pvtmlmtu32; pci:74h) private memory limit upper 32 bits bit description read write value after reset 31:0 private memory limit upper 32 bits. defines the upper 32-bit (bits [63:32]) memory limit address of the private memory address range. yes yes [15:4] 0h
section 6 pci configuration register address mapping ? transparent mode registers pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 6-37 6 ? registers 6.1.2.16 hot swap and read-only register control register register 6-60. (hssrrc; pci:9ch) hot swap switch and ror control bit description read write value after reset 0 hot swap extraction switch. used to signal board extraction. if set, the board is in the inserted state. writing 0 to this bit signals pending board extraction. yes yes ? 1 primary port 64-bit extension signals park. value: 1 = drives primary port pci 64-bit extension signals p_ad[63:32], p_cbe[7:4]#, and p_par64 to 0 yes yes 0 2 secondary port 64-bit extension signals park. value: 1 = drives secondary port pci 64-bit extension signals s_ad[63:32], s_cbe[7:4]#, and s_par64 to 0 yes yes 0 4:3 reserved. yes no 00b 5 downstream translation bar access. value: 1 = enables the shadowed downstream address translation bars to be accessed and written to (refer to section 6.1.2.19) yes yes 0 6 upstream translation bar access. value: 1 = enables the shadowed upstream address translation bars to be accessed and written to (refer to section 6.1.2.19) yes yes 0 7 read-only registers write enable. setting this bit to 1 enables writes to specific bits within these normally read-only registers (refer to the listed registers for further details):  vendor and device ids (pciidr; pci:00h)  pci class code (pciccr; pci:09h ? 0bh)  pci header type (pcihtr; pci:0eh)  power management capabilities (pmc; pci:deh)  power management control/status (pmcsr; pci:e0h)  power management data (pmcdata; pci:e3h) bit must be cleared after the values are modified in these read-only registers. yes yes 0
section 6 registers pci configuration register address mapping ? transparent mode pci 6540 data book, version 1.0 6-38 ? 2003 plx technology, inc. all rights reserved. 6.1.2.17 gpio[7:4], power-up status, and gpio[15:8] registers register 6-61. (gpiood[7:4]; pci:9dh) gpio[7:4] output data bit description read write value after reset 3:0 gpio[7:4] output data write 1 to clear. writing 1 to these bits drives the corresponding signal low on the gpio[7:4] bus, if the signal is programmed as an output. writing 0 has no effect. read returns the last written value. yes yes/clr 0h 7:4 gpio[7:4] output data write 1 to set. writing 1 to these bits drives the corresponding signal high on the gpio[7:4] bus, if the signal is programmed as an output. writing 0 has no effect. read returns the last written value. yes yes/set high 0h register 6-62. (gpiooe[7:4]; pci:9eh) gpio[7:4] output enable bit description read write value after reset 3:0 gpio[7:4] output enable write 1 to clear. writing 1 to these bits configures the corresponding signal on the gpio[7:4] bus as an input. writing 0 has no effect. read returns the last written value. yes yes/clr 0h 7:4 gpio[7:4] output enable write 1 to set. writing 1 to these bits configures the corresponding signal on the gpio[7:4] bus as an output. writing 0 has no effect. read returns the last written value. yes yes/set high 0h register 6-63. (gpioid[7:4]; pci:9fh) gpio[7:4] input data bit description read write value after reset 3:0 reserved. yes no 0h 7:4 gpio[7:4] input data. reads the gpio[7:4] pin state. the state is updated on the pci clock cycle following a change in gpio[7:4] state. yes no ?
section 6 pci configuration register address mapping ? transparent mode registers pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 6-39 6 ? registers register 6-64. (pwrupsr; pci:a0h) power-up status bit description read write value after reset 7:0 power-up latched status bits. upon pwrgd (power good), the gpio[15:8] status is latched into pwrupsr. select pin status for desired option setting or checking. recommended use:  gpio15 ? primary power state. value of 1h indicates primary port power is stable.  gpio14 ? secondary power state. value of 1h indicates secondary port power is stable.  gpio13 ? 100 mhz pci-x. value of 1h indicates secondary pci-x bus is running at 100 mhz. yes no gpio[15:8] register 6-65. (gpiood[15:8]; pci:a1h) gpio[15:8] output data bit description read write value after reset 7:0 gpio[15:8] output data. values written to this register are output on the gpio[15:8] pins, if enabled. values: 0h = low 1h = high yes yes 0h register 6-66. (gpiooe[15:8]; pci:a2h) gpio[15:8] output enable bit description read write value after reset 7:0 gpio[15:8] output enable. writing 1 to these bits configures the corresponding signal on the gpio[15:8] bus as an output. writing 0 configures the corresponding signal as an input. yes yes 0h register 6-67. (gpioid[15:8]; pci:a3h) gpio[15:8] input data bit description read write value after reset 7:0 gpio[15:8] input data. reads the gpio[15:8] pin state. the state is updated on the pci clock cycle following a change in gpio[15:8] state. yes no ?
section 6 registers pci configuration register address mapping ? transparent mode pci 6540 data book, version 1.0 6-40 ? 2003 plx technology, inc. all rights reserved. 6.1.2.18 sticky scratch and extended registers there are eight, 32-bit sticky scratch registers available in the pci 6540 (scratch x ; ext:00h to 07h). address translation registers are also located in the extended register area. the extended registers are accessed by way of the extended register index and data registers (extridx; pci:d3h and extrdata; pci:d4h, respectively). the base address registers at index 08h to 0fh are discussed in section 6.1.2.19. notes: when the serial eeprom is set to initialize for universal non-transparent mode applications, these registers also activate translation in universal transparent mode if prv_dev=1. (refer to section 7, ? serial eeprom. ? ) refer to the individual register descriptions to determine which bits are writable. table 6-2. extended register map ? offset from extended register index, transparent mode extended register index writable serial eeprom writable 31 24 23 16 15 8 70 00h 32-bit sticky 0 yes no 01h 32-bit sticky 1 yes no 02h 32-bit sticky 2 yes no 03h 32-bit sticky 3 yes no 04h 32-bit sticky 4 yes no 05h 32-bit sticky 5 yes no 06h 32-bit sticky 6 yes no 07h 32-bit sticky 7 yes no
section 6 pci configuration register address mapping ? transparent mode registers pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 6-41 6 ? registers register 6-68. (scratch x ; ext:00h ? 07h) 32-bit sticky scratch bit description read write value after reset 31:0 sticky scratch. upon power good, the values of these registers are undefined. after power is good, p_rstin# and/ or s_rstin# assertion does not affect their current value. yes yes ? register 6-69. (extridx; pci:d3h) extended register index bit description read write value after reset 7:0 extended index address. index address for extended registers. yes yes ? register 6-70. (extrdata; pci:d4h) extended register data bit description read write value after reset 31:0 extended register data. configuration write causes the data presented at this port to be written into the register addressed by the extended register index (extridx; pci:d3h). configuration read causes the data from the register addressed by the extended register index to be placed into and read from extrdata. yes yes ?
section 6 registers pci configuration register address mapping ? transparent mode pci 6540 data book, version 1.0 6-42 ? 2003 plx technology, inc. all rights reserved. 6.1.2.19 address translation control registers when using the pci 6540 in standard transparent mode, the address translation control registers should remain in the default state. these registers are used only when address translation is required in transparent mode. (refer to section 10.7.2, ? transparent mode address translation, ? for further details.) the address translation enable control bits enable or disable only the address translation functions. these bits do not control whether the memory window is open. take care to ensure that there is a valid memory window in the memory map of the host on that port. the base address registers at extended register index 08h to 0fh (refer to table 6-4 on page 6-45) are accessible only by reading/writing through the extended register index and data registers. notes: the registers listed in table 6-3 can be written to only when the appropriate hot swap switch and read-only register bit is set to 1 (hssrrc[6 or 5]=1; pci:9ch). to allow normal device operation, hssrrc[6:5] must be reset to 00b after the registers are configured. refer to the individual register descriptions to determine which bits are writable. table 6-3. pci configuration shadowed registers (used in transparent address translation) pci configuration register address primary offset to ensure software compatibility with other versions of the pci 6540 family and to ensure compatibility with future enhancements, write 0 to all unused bits. pci writable serial eeprom writable 31 0 10h downstream i/o bar 0 only if hssrrc[5]=1; pci:9ch no 14h downstream memory bar 1 only if hssrrc[5]=1; pci:9ch no 18h downstream memory bar 2 or downstream memory bar 1 upper 32 bits only if hssrrc[5]=1; pci:9ch no 10h upstream i/o or memory bar 0 only if hssrrc[6]=1; pci:9ch no 14h upstream memory bar 1 only if hssrrc[6]=1; pci:9ch no 18h upstream memory bar 2 or upstream memory bar 1 upper 32 bits only if hssrrc[6]=1; pci:9ch no
section 6 pci configuration register address mapping ? transparent mode registers pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 6-43 6 ? registers note: when using 64-bit addressing for pcibar1, pcibar2 becomes the upper 32 bits of the pcibar1 address. (refer to dwnbar1msk[14].) register 6-71. (pcibar0; primary pci:10h) pci downstream i/o bar 0 bit description read write value after reset 0 memory space indicator. writing 0 indicates the register maps into memory space. writing 1 indicates that the register maps into i/o space. must be set to 1 for correct operation. yes only if hssrrc[5]=1; pci:9ch 0 1 reserved. must be set to 0. yes only if hssrrc[5]=1; pci:9ch 0 31:2 base address. base address for downstream accesses. yes only if hssrrc[5]=1; pci:9ch 0h register 6-72. (pcibar1; primary pci:14h) pci downstream memory bar 1 bit description read write value after reset 0 memory space indicator. writing 0 indicates the register maps into memory space. yes no 0 2:1 register location. values: 00b = locate anywhere in 32-bit memory address space 01b = pci r2.1 , locate below 1-mb memory address space pci r2.3 , reserved yes only if hssrrc[5]=1; pci:9ch 00b 3 prefetchable. writing 1 indicates that there are no side effects on reads. yes only if hssrrc[5]=1; pci:9ch 0 31:4 base address. base address for downstream accesses. yes only if hssrrc[5]=1; pci:9ch 0h register 6-73. (pcibar2; primary pci:18h) pci downstream memory bar 2 or downstream memory bar 1 upper 32 bits bit description read write value after reset 0 memory space indicator. writing 0 indicates the register maps into memory space. yes no 0 2:1 register location. values: 00b = locate anywhere in 32-bit memory address space 01b = pci r2.1 , locate below 1-mb memory address space pci r2.3 , reserved yes only if hssrrc[5]=1; pci:9ch 00b 3 prefetchable. writing 1 indicates that there are no side effects on reads. yes only if hssrrc[5]=1; pci:9ch 0 31:4 base address. base address for downstream accesses. yes only if hssrrc[5]=1; pci:9ch 0h
section 6 registers pci configuration register address mapping ? transparent mode pci 6540 data book, version 1.0 6-44 ? 2003 plx technology, inc. all rights reserved. register 6-74. (pciubar0; primary pci:10h) pci upstream i/o or memory bar 0 bit description read write value after reset 0 memory space indicator. writing 0 indicates the register maps into memory space. writing 1 indicates that the register maps into i/o space. yes only if hssrrc[6]=1; pci:9ch) 0 2:1 register location (if memory space). when mapped into i/o space (pciubar0[0]=1), bit 1 is always 0 and bit 2 is included in the base address (pcibar0[31:4]). values: 00b = locate anywhere in 32-bit memory address space 01b = pci r2.1 , locate below 1-mb memory address space pci r2.3 , reserved yes only if hssrrc[6]=1; pci:9ch) 00b 3 prefetchable (if memory space). writing 1 indicates that there are no side effects on reads. when mapped into i/o space (pciubar0[0]=1), bit 3 is included in the base address (pciubar0[31:4]). yes only if hssrrc[6]=1; pci:9ch) 0 31:4 base address. base address for upstream accesses. yes only if hssrrc[6]=1; pci:9ch) 0h register 6-75. (pciubar1; primary pci:14h) pci upstream memory bar 1 bit description read write value after reset 0 memory space indicator. writing 0 indicates the register maps into memory space. yes no 0 2:1 register location. values: 00b = locate anywhere in 32-bit memory address space 01b = pci r2.1 , locate below 1-mb memory address space pci r2.3 , reserved yes only if hssrrc[6]=1; pci:9ch) 00b 3 prefetchable. writing 1 indicates that there are no side effects on reads. yes only if hssrrc[6]=1; pci:9ch) 0 31:4 base address. base address for upstream accesses. yes only if hssrrc[6]=1; pci:9ch) 0h
section 6 pci configuration register address mapping ? transparent mode registers pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 6-45 6 ? registers note: when using 64-bit addressing for pciubar1, pciubar2 becomes the upper 32 bits of the pciubar1 address. (refer to upsbar1msk[14].) notes: when the serial eeprom is set to initialize for universal non-transparent mode applications, these registers also activate translation in universal transparent mode if prv_dev=1. (refer to section 10.7.2, ? transparent mode address translation, ? on page 10-6 and section 10.7.3, ? non-transparent mode address translation, ? on page 10-11 for further details.) refer to the individual register descriptions to determine which bits are writable. register 6-76. (pciubar2; primary pci:18h) pci upstream memory bar 2 or upstream memory bar 1 upper 32 bits bit description read write value after reset 0 memory space indicator. writing 0 indicates the register maps into memory space. yes no 0 2:1 register location. values: 00b = locate anywhere in 32-bit memory address space 01b = pci r2.1 , locate below 1-mb memory address space pci r2.3 , reserved yes only if hssrrc[6]=1; pci:9ch) 00b 3 prefetchable. writing 1 indicates that there are no side effects on reads. yes only if hssrrc[6]=1; pci:9ch) 0 31:4 base address. base address for upstream accesses. yes only if hssrrc[6]=1; pci:9ch) 0h table 6-4. extended register map (used in transparent address translation) ? offset from extended register index extended register index writable serial eeprom writable 31 24 23 16 15 8 70 08h upstream bar 0 translation address yes yes 09h upstream bar 1 translation address yes yes 0ah upstream bar 2 or upstream bar 1 upper 32 bits translation address yes yes 0bh upstream translation enable upstream bar 2 translation mask upstream bar 1 translation mask upstream bar 0 translation mask yes yes 0ch downstream bar 0 translation address yes yes 0dh downstream bar 1 translation address yes yes 0eh downstream bar 2 or downstream bar 1 upper 32 bits translation address yes yes 0fh downstream translation enable downstream bar 2 translation mask downstream bar 1 translation mask downstream bar 0 translation mask yes yes
section 6 registers pci configuration register address mapping ? transparent mode pci 6540 data book, version 1.0 6-46 ? 2003 plx technology, inc. all rights reserved. register 6-77. (upstnbar0; ext:08h) upstream bar 0 translation address bit description read write value after reset 31:0 upstream bar 0 translation address. bits [11:0] are read-only and always 0. only address bits [31:12] are translated. lower address bits are passed. note: translation address must align with window-size boundary. yes yes [31:12]; serial eeprom 0h register 6-78. (upstnbar1; ext:09h) upstream bar 1 translation address bit description read write value after reset 31:0 upstream bar 1 translation address. bits [19:0] are read-only and always 0. only address bits [31:20] are translated. lower address bits are passed. note: translation address must align with window-size boundary. yes yes [31:20]; serial eeprom 0h register 6-79. (upstnbar2; ext:0ah) upstream bar 2 translation address or upstream bar 1 upper 32 bits bit description read write value after reset 31:0 upstream bar 2 translation address or upstream bar 1 upper 32 bits. bits [11:0] are read-only and always 0. only address bits [31:12] are translated. lower address bits are passed. if pciubar1 is configured as a 64-bit bar (upsbar1msk[14]=1; ext:0bh), upstnbar2 contains the upper 32 bits of the bar 1 translation address. note: translation address must align with window-size boundary. yes yes [31:12]; serial eeprom 0h
section 6 pci configuration register address mapping ? transparent mode registers pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 6-47 6 ? registers register 6-80. (upsbar0msk; ext:0bh) upstream bar 0 translation mask bit description read write value after reset 4:0 address mask msb position. number of local address bits for bar 0 mask. yes yes; serial eeprom 1fh 5 reserved .yesno0 6 bar type. values: 0 = bar 0 points to i/o space 1 = bar 0 points to memory space yes yes; serial eeprom 0 7 prefetchable. values: 0 = region pointed to by bar 0 is not prefetchable 1 = region pointed to by bar 0 is in a prefetchable memory region yes yes; serial eeprom 0 register 6-81. (upsbar1msk; ext:0bh) upstream bar 1 translation mask bit description read write value after reset 13:8 address mask msb position. number of local address bits for bar 1 mask. yes yes; serial eeprom 3fh 14 bar type. values: 0 = bar 1 is a 32-bit bar 1 = bar 1 is a 64-bit bar yes yes; serial eeprom 0 15 prefetchable. values: 0 = region pointed to by bar 1 is not prefetchable 1 = region pointed to by bar 1 is in a prefetchable memory region yes yes; serial eeprom 0 register 6-82. (upsbar2msk; ext:0bh) upstream bar 2 translation mask bit description read write value after reset 20:16 address mask msb position. number of local address bits for bar 2 mask. yes yes; serial eeprom 1fh 22:21 reserved . yes no 00b 23 prefetchable. values: 0 = region pointed to by bar 2 is not prefetchable 1 = region pointed to by bar 2 is in a prefetchable memory region yes yes; serial eeprom 0
section 6 registers pci configuration register address mapping ? transparent mode pci 6540 data book, version 1.0 6-48 ? 2003 plx technology, inc. all rights reserved. register 6-83. (upstne; ext:0bh) upstream translation enable bit description read write value after reset 24 upstream bar 0 enable. if 1, address translation using bar 0 is enabled. yes yes; serial eeprom 0 25 upstream bar 1 enable. if 1, address translation using bar 1 is enabled. yes yes; serial eeprom 0 26 upstream bar 2 enable. if 1, address translation using bar 2 is enabled. yes yes; serial eeprom 0 31:27 reserved . yes no 0h register 6-84. (dwntnbar0; ext:0ch) downstream bar 0 translation address bit description read write value after reset 31:0 downstream bar 0 translation address. bits [11:0] are read-only and always 0. only address bits [31:12] are translated. lower address bits are passed. note: translation address must align with window-size boundary. yes yes [31:12]; serial eeprom 0h register 6-85. (dwntnbar1; ext:0dh) downstream bar 1 translation address bit description read write value after reset 31:0 downstream bar 1 translation address. bits [19:0] are read-only and always 0. only address bits [31:20] are translated. lower address bits are passed. note: translation address must align with window-size boundary. yes yes [31:20]; serial eeprom 0h register 6-86. (dwntnbar2; ext:0eh) downstream bar 2 or downstream memory bar 1 upper 32 bits translation address bit description read write value after reset 31:0 downstream bar 2 or downstream memory bar 1 upper 32 bits translation address. bits [11:0] are read-only and always 0. only address bits [31:12] are translated. lower address bits are passed. if pcibar1 is configured as a 64-bit bar (dwnbar1msk[14]=1; ext:0fh), dwntnbar2 contains the upper 32 bits of the bar 1 translation address. note: translation address must align with window-size boundary. yes yes [31:12]; serial eeprom 0h
section 6 pci configuration register address mapping ? transparent mode registers pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 6-49 6 ? registers register 6-87. (dwnbar0msk; ext:0fh) downstream bar 0 translation mask bit description read write value after reset 4:0 address mask msb position. number of local address bits for bar 0 mask. yes yes; serial eeprom 1fh 5 reserved. yes no 0 6 bar type. must be set to 1. values: 0 = bar 0 points to memory space 1 = bar 0 points to i/o space yes yes; serial eeprom 0 7 reserved. must be set to 0. this bit is normally used to determine whether the region pointed to by the bar is prefetchable. however, this bar must map into i/o space, which by definition is not prefetchable. therefore, this bit must be set to 0. note: in non-transparent mode, this bar can map into either memory or i/o space, which is why the bit is writable. yes yes; serial eeprom 0 register 6-88. (dwnbar1msk; ext:0fh) downstream bar 1 translation mask bit description read write value after reset 13:8 address mask msb position. number of local address bits for bar 1 mask. yes yes; serial eeprom 3fh 14 bar type. values: 0 = bar 1 is a 32-bit bar 1 = bar 1 is a 64-bit bar yes yes; serial eeprom 0 15 prefetchable. values: 0 = region pointed to by bar 1 is not prefetchable 1 = region pointed to by bar 1 is in a prefetchable memory region yes yes; serial eeprom 0
section 6 registers pci configuration register address mapping ? transparent mode pci 6540 data book, version 1.0 6-50 ? 2003 plx technology, inc. all rights reserved. register 6-89. (dwnbar2msk; ext:0fh) downstream bar 2 translation mask bit description read write value after reset 20:16 address mask msb position. number of local address bits for bar 2 mask. yes yes; serial eeprom 1fh 22:21 reserved. yes no 00b 23 prefetchable. values: 0 = region pointed to by bar 2 is not prefetchable 1 = region pointed to by bar 2 is in a prefetchable memory region yes yes; serial eeprom 0 register 6-90. (dwntne; ext:0fh) downstream translation enable bit description read write value after reset 24 downstream bar 0 enable. if 1, address translation using bar 0 is enabled. yes yes; serial eeprom 0 25 downstream bar 1 enable. if 1, address translation using bar 1 is enabled. yes yes; serial eeprom 0 26 downstream bar 2 enable. if 1, address translation using bar 2 is enabled. yes yes; serial eeprom 0 31:27 reserved. yes no 0h
section 6 pci configuration register address mapping ? transparent mode registers pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 6-51 6 ? registers 6.1.2.20 power management capability registers the pmc[12:9, 1:0]; pci:deh, pmcdata; pci:e3h, and pmcsr; pci:e0h power management registers are normally read-only. however, their default values can be changed by firmware or software by setting the read-only registers write enable bit (hssrrc[7]=1; pci:9ch). after modifying these registers, the write enable bit must be cleared to preserve the read-only nature of these registers. it should be noted that the hssrrc[7] state does not affect write accesses to pmcsr[15, 8] . register 6-91. (pmcapid; pci:dch) power management capability id bit description read write value after reset 7:0 power management capability id. pci-sig-issued capability id for power management is 1h. yes no 1h register 6-92. (pmnext; pci:ddh) power management next capability pointer bit description read write value after reset 7:0 next_cap pointer. provides an offset into pci configuration space for the hot swap capability location in the new capabilities linked list. yes no e4h
section 6 registers pci configuration register address mapping ? transparent mode pci 6540 data book, version 1.0 6-52 ? 2003 plx technology, inc. all rights reserved. register 6-93. (pmc; pci:deh) power management capabilities bit description read write value after reset 2:0 version. set to 001b, indicates that this function complies with pci power mgmt. r1.1 . yes only if hssrrc[7]=1; serial eeprom 001b 3 pme clock. because pci 6540 does not require the pci clock for pme#, set this bit to 0. yes only if hssrrc[7]=1; serial eeprom 0 4 auxiliary power source. because pci 6540 does not support pme# while in a d 3cold state, this bit is always set to 0. yes only if hssrrc[7]=1; serial eeprom 0 5 device-specific initialization (dsi). returns 0, indicating pci 6540 does not require special initialization. yes only if hssrrc[7]=1; serial eeprom 0 8:6 reserved. yes no 000b 9 d 1 support. returns 1, indicating that pci 6540 supports the d 1 device power state. yes only if hssrrc[7]=1; serial eeprom 1 10 d 2 support. returns 1, indicating that pci 6540 supports the d 2 device power state. yes only if hssrrc[7]=1; serial eeprom 1 15:11 pme support. values: xxxx1b = pme# can be asserted from d 0 xxx1xb = pme# can be asserted from d 1 xx1xxb = pme# can be asserted from d 2 x1xxxb = pme# can be asserted from d 3hot 1xxxxb = pme# can be asserted from d 3cold yes only if hssrrc[7]=1; serial eeprom 01111b
section 6 pci configuration register address mapping ? transparent mode registers pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 6-53 6 ? registers register 6-94. (pmcsr; pci:e0h) power management control/status bit description read write value after reset 1:0 power state. used to determine the current power state of a function and to set the function into a new power state. values: 00b = d 0 01b = d 1 10b = d 2 11b = d 3hot yes yes; serial eeprom 00b 7:2 reserved. yes no 0h 8 pme enable. enables the pme# output pin. values: 0 = pme# output disabled 1 = pme# output enabled note: in transparent mode, p_pme# and s_pme# should be pulled high and not used. pme# output is always p_pme#. in non-transparent mode, the pme# output is either p_pme# or s_pme#, depending on the p_boot value. yes yes; serial eeprom 0 12:9 data select. returns 0h, indicating pci 6540 does not return dynamic data. yes only if hssrrc[7]=1; serial eeprom 0h 14:13 data scale. returns 00b when read. pci 6540 does not return dynamic data. yes no 00b 15 pme status. set to 0, because pci 6540 does not support pme# signaling. yes yes; serial eeprom 0 register 6-95. (pmcsr_bse; pci:e2h) pmcsr bridge supports extensions bit description read write value after reset 5:0 reserved. yes no 0h 6 b 2 /b 3 support for d 3hot . reflects bpcc_en input pin state. value of 1 indicates that when pci 6540 is programmed to d 3hot state, the secondary bus clock is stopped. yes no ? 7 bus power control enable. reflects bpcc_en input pin state. value of 1 indicates that the secondary bus power management state follows that of pci 6540, with one exception ? d 3hot . yes no ? register 6-96. (pmcdata; pci:e3h) power management data bit description read write value after reset 7:0 power management data. serial eeprom or ror write controlled loadable, but is read-only during normal operation. yes only if hssrrc[7]=1; serial eeprom 0h
section 6 registers pci configuration register address mapping ? transparent mode pci 6540 data book, version 1.0 6-54 ? 2003 plx technology, inc. all rights reserved. 6.1.2.21 hot swap capability registers register 6-97. (hs_cntl; pci:e4h) hot swap control bit description read write value after reset 7:0 hot swap capability id. pci-sig-issued capability id for hot swap is 06h. yes no 06h register 6-98. (hs_next; pci:e5h) hot swap next capability pointer bit description read write value after reset 7:0 next_cap pointer. provides an offset into pci configuration space for the vpd capability location in the new capabilities linked list. yes no e8h register 6-99. (hs_csr; pci:e6h) hot swap control/status bit description read write value after reset 0 device hiding arm (dha). dha is set to 1 by hardware when the hot swap port pci rstin# becomes inactive and the handle switch remains unlocked. handle locking clears this bit. values: 0 = disarm device hiding 1 = arm device hiding yes yes 0 1 enum# mask status (eim). enables or disables enum# assertion. values: 0 = enables enum# assertion 1 = masks enum# assertion yes yes 0 2 pending insert or extract (pie). set when ins or ext is 1 or ins is armed (write 1 to ext bit). values: 0 = neither is pending 1 = either an insertion or an extraction is in progress yes no ? 3 led status (loo). indicates whether led is on or off. values: 0 = led off 1 = led on yes yes 0 5:4 programming interface (pi). hardcoded at 01b ? ins, est, loo, eim, pie, and device hiding supported. yes no 01b 6 extraction state (ext). set by hardware when the ejector handle is unlocked and ins=0. yes yes/clr ? 7 insertion state (ins). set by hardware when the hot swap port rstin# is de-asserted, serial eeprom autoload is completed, and ejector handle is locked. writing 1 to ext bit also arms ins. yes yes/clr ? 15:8 reserved. yes no 0h
section 6 pci configuration register address mapping ? transparent mode registers pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 6-55 6 ? registers 6.1.2.22 vpd capability registers register 6-100. (pvpdid; pci:e8h) vital product data capability id bit description read write value after reset 7:0 vital product data capability id. pci-sig-issued capability id for vpd is 03h. yes no 03h register 6-101. (pvpd_next; pci:e9h) vital product data next capability pointer bit description read write value after reset 7:0 next_cap pointer . provides offset into pci configuration space for the pci-x capability location in the new capabilities linked list. yes no f0h register 6-102. (pvpdad; pci:eah) vital product data address bit description read write value after reset 1:0 reserved. yes no 00b 7:2 vpd address. offset into the serial eeprom to location where data is written and read. pci 6540 accesses the serial eeprom at address pvpdad[7:2]+40h. the 40h offset ensures that vpd accesses do not overwrite the pci 6540 serial eeprom configuration data stored in serial eeprom locations 00h to 3fh. yes yes 0 14:8 reserved. yes no 0h 15 vpd operation . writing 0 generates a read cycle from the serial eeprom at the vpd address specified in pvpdad[7:2]. this bit remains at logic 0 until the serial eeprom cycle is complete, at which time the bit is set to 1. data for reads is available in the vpd data register (pvpdata; pci:ech). writing 1 generates a write cycle to the serial eeprom at the vpd address specified in pvpdad[7:2]. remains at logic 1, until the serial eeprom cycle is completed, at which time the bit is cleared to 0. place data for writes into the vpd data register. yes yes 0 register 6-103. (pvpdata; pci:ech) vpd data bit description read write value after reset 31:0 vpd data (serial eeprom data). the least significant byte of this register corresponds to the byte of vpd at the address specified by the vpd address register (pvpdad[7:2]; pci:eah). data is read from or written to pvpdata, using standard configuration accesses. yes yes 0h
section 6 registers pci configuration register address mapping ? transparent mode pci 6540 data book, version 1.0 6-56 ? 2003 plx technology, inc. all rights reserved. 6.1.2.23 pci-x capability registers register 6-104. (pcixcapid; pci:f0h) pci-x capability id bit description read write value after reset 7:0 pci-x capability id. pci-sig-issued capability id for pci-x is 07h. yes no 07h register 6-105. (pcix_next; pci:f1h) pci-x next capability pointer bit description read write value after reset 7:0 next_cap pointer. provides an offset into pci configuration space for the location of the next capability in the new capabilities linked list. set to 0h in transparent mode to indicate the end of the capabilities list. yes no 0h register 6-106. (pcixssr; pci:f2h) pci-x secondary status bit description read write value after reset 0 64-bit device. indicates the pci 6540 secondary ad interface width. reflects result of the secondary reset time inquiry, to determine 64-bit device existence. values: 0 = 32-bit bus data width 1 = 64-bit bus data width yes no 1 1 133 mhz capable. indicates pci 6540 secondary interface is capable of 133 mhz operations in pci-x mode. values: 0 = maximum operating frequency is 66 mhz 1 = maximum operating frequency is 133 mhz yes no ? 2 split completion discarded. set if pci 6540 discards a split completion moving toward the secondary bus, because requester would not accept it. values: 0 = split completion not discarded 1 = split completion discarded yes yes/clr 0 3 unexpected split completion. set if an unexpected split completion with a requester id equal to pci 6540 secondary bus number, device number 00h, and function number 000b is received on pci 6540 secondary interface. values: 0 = no unexpected split completion received 1 = unexpected split completion received yes yes/clr 0
section 6 pci configuration register address mapping ? transparent mode registers pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 6-57 6 ? registers 4 split completion overrun. set if pci 6540 terminates a split completion on the secondary bus, with retry or disconnect at the next adb, because pci 6540 buffers are full. values: 0 = bridge accepted all split completions 1= bridge terminated a split completion, with a retry or disconnect at the next adb because the bridge buffers are full yes yes/clr 0 5 split request delayed. set if pci 6540 received a request to forward a transaction on the secondary bus, but cannot because there is insufficient space within the limit specified in the pci-x downstream split transaction register split transaction commitment limit bits (pcixdnstr[31:16]; pci:fch). values: 0 = bridge did not delay a split request 1 = bridge delayed a split request yes yes/clr 0 8:6 secondary clock frequency . enables configuration software to determine to which mode (and in pci-x mode, to which frequency) the pci 6540 set the secondary bus the last time s_rstin# was asserted. values: bits maximum clock minimum clock [8:6] frequency (mhz) period (ns) 000b conventional pci mode n/a 001b pci-x 66 15 010b pci-x 100 10 011b pci-x 133 7.5 1xxb reserved reserved yes no ? 15:9 reserved. yes no 0h register 6-106. (pcixssr; pci:f2h) pci-x secondary status (continued) bit description read write value after reset
section 6 registers pci configuration register address mapping ? transparent mode pci 6540 data book, version 1.0 6-58 ? 2003 plx technology, inc. all rights reserved. register 6-107. (pcixbsr; pci:f4h) pci-x bridge status bit description read write value after reset 2:0 function number. indicates the number of this function ? the number in ad[10:8] of a type 0 configuration transaction address to which this bridge responds. the function uses this number as part of its requester and completer ids (set to 000b). pci 6540 uses the bus, device, and function numbers fields to create the completer id when responding with a split completion to a read of an internal bridge register. yes no 000b 7:3 device number. indicates device number (the number in ad[15:11] of the address of a type 0 configuration transaction) assigned to pci 6540. yes no 11111b 15:8 bus number. additional addresses from which the primary bus number register contents (in the type 01h configuration space header) are read. yes no ? 16 64-bit device. indicates the bridge ad bus data width. this bit is the inverse of the dev64# input. values: 0 = 32-bit bus data width 1 = 64-bit bus data width yes no inverse of dev64# input 17 133 mhz capability. indicates bridge primary interface is capable of 133 mhz operations in pci-x mode. values: 0 = device maximum frequency is 66 mhz 1 = device maximum frequency is 133 mhz yes no 1 18 split completion discard. set if pci 6540 discards a split completion, because the requester on the primary bus would not accept it. values: 0 = split completion not discarded 1 = split completion discarded yes yes/clr 0 19 unexpected split completion. set if an unexpected split completion with a requester id equal to pci 6540 primary bus, device, and function numbers is received on the bridge primary bus. values: 0 = no unexpected split completion was received 1 = unexpected split completion was received yes yes/clr 0 20 split request delay. set if pci 6540 terminates a split completion on the primary bus, with retry or disconnect at the next adb, because the bridge buffers are full. used by algorithms that optimize the upstream split transaction commitment limit register setting. values: 0 = bridge accepted all split completions 1 = bridge terminated a split completion with retry or disconnect yes yes/clr 0 21 split completion overrun. set when pci 6540 receives a request to forward a transaction on the primary bus, but cannot because there is insufficient space within the limit specified in the pci-x upstream split transaction register split transaction commitment limit bits (pcixupstr[31:16]; pci:f8h). values: 0 = bridge did not delay a split request 1= bridge delayed a split request yes yes/clr 0 31:22 reserved. yes no 0h
section 6 pci configuration register address mapping ? transparent mode registers pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 6-59 6 ? registers note: pcixupstr controls the bridge buffer behavior for forwarding split transactions from a secondary requester to a primary bus completer. note: pcixdnstr controls the bridge buffer behavior for forwarding split transactions from a primary bus requester to a secondary bus completer. register 6-108. (pcixupstr; pci:f8h) pci-x upstream split transaction bit description read write value after reset 15:0 split transaction capacity. pci 6540 stores split completions for memory reads in the same buffer as split completions for i/o and configuration reads and writes. indicates the buffer size, in adq numbers, for storing split completions for memory reads for requesters on the secondary bus addressing completers on the primary bus. yes no 32d 31:16 split transaction commitment limit or outstanding adq limit. indicates the cumulative sequence size for pci-x memory read transactions forwarded by pci 6540 from requesters on the secondary bus addressing completers on the primary bus. also indicates upstream split transaction size of those types the pci 6540 is allowed to commit to at one time. yes yes 32d register 6-109. (pcixdnstr; pci:fch) pci-x downstream split transaction bit description read write value after reset 15:0 split transaction capacity. pci 6540 stores split completions for memory reads in the same buffer as split completions for i/o and configuration reads and writes. indicates the buffer size, in adq numbers, for storing split completions for memory reads for requesters on the primary bus addressing completers on the secondary bus. yes no 32d 31:16 split transaction commitment limit or outstanding adq limit. indicates the cumulative sequence size for pci-x memory read transactions forwarded by pci 6540 from requesters on the secondary bus addressing completers on the primary bus. also indicates downstream split transaction size of those types the pci 6540 is allowed to commit to at one time. yes yes 32d
section 6 registers pci configuration register address mapping ? non-transparent mode pci 6540 data book, version 1.0 6-60 ? 2003 plx technology, inc. all rights reserved. 6.2 pci configuration register address mapping ? non-transparent mode 6.2.1 pci configuration register address mapping 00h to 7fh ? non-transparent mode the pci 6540 can be configured to operate as a transparent or non-transparent pci-to-pci bridge. modes are selectable through the trans# pin. when trans# is high, the pci 6540 is configured to operate in non-transparent mode. in non-transparent mode, the pci 6540 uses header type 0 for the pci configuration registers. table 6-3 lists the register mapping and offsets used to access those registers from primary or secondary ports. registers listed with a pci offset or address are accessed by standard pci type 0 configuration accesses. the primary port retains full access to its own registers at offsets 00h to 40h and read-only access to the secondary port configuration registers at offsets 40h to 7fh. similarly, the secondary port retains full access to its own registers at offsets 00h to 40h and read-only access to the primary port configuration registers at offsets 40h to 7fh.
section 6 pci configuration register address mapping ? non-transparent mode registers pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 6-61 6 ? registers table 6-5. pci configuration register address mapping 00h ? 7ch ? non-transparent mode pci configuration register address to ensure software compatibility with other versions of the pci 6540 family and to ensure compatibility with future enhancements, write 0 to all unused bits. pci writable 3 serial eeprom writable 3 primary offset secondary offset 31 24 23 16 15 8 70 00h 40h device id 1, 2 1. writable only when the read-only registers write enable bit is set (hssrrc[7]=1; pci:9ch). refer to the individual register descriptions to determine which bits are writable. 2. shared registers for primary and secondary ports. 3. refer to the individual register descriptions to determine which bits are writable. vendor id 1, 2 yes yes 04h 44h primary status primary command yes no 08h 48h class code 1, 2 revision id 2 yes yes 0ch 4ch built-in self-test (not supported) header type 1, 2 primary latency timer primary cache line size yes yes 10h 50h downstream i/o or memory bar 0 yes no 14h 54h downstream memory bar 1 yes no 18h 58h downstream memory bar 2 or downstream memory bar 1 upper 32 bits yes no 1ch ? 2bh 5ch ? 6bh reserved no no 2ch 6ch subsystem id 1, 2 subsystem vendor id 1, 2 yes yes 30h 70h reserved no no 34h 74h reserved new capability pointer 2 no no 38h 78h reserved no no 3ch 7ch primary maximum latency 1 primary minimum grant 1 primary interrupt pin primary interrupt line yes no 40h 00h device id 1, 2 vendor id 1, 2 yes yes 44h 04h secondary status secondary command yes no 48h 08h class code 1, 2 revision id 2 yes yes 4ch 0ch built-in self-test (not supported) header type 1, 2 secondary latency timer secondary cache line size yes yes 50h 10h upstream i/o or memory bar 0 yes no 54h 14h upstream memory bar 1 yes no 58h 18h upstream memory bar 2 or upstream memory bar 1 upper 32 bits yes no 5ch ? 6bh 1ch ? 2bh reserved no no 6ch 2ch subsystem id 1, 2 subsystem vendor id 1, 2 yes yes 70h 30h reserved no no 74h 34h reserved new capability pointer 2 no no 78h 38h reserved no no 7ch 3ch secondary maximum latency 1 secondary minimum grant 1 secondary interrupt pin secondary interrupt line yes no
section 6 registers pci configuration register address mapping ? non-transparent mode pci 6540 data book, version 1.0 6-62 ? 2003 plx technology, inc. all rights reserved. 6.2.2 primary configuration registers ? non-transparent mode except for the declared shared registers in table 6-3, primary and secondary ports have independent registers at offsets 00h to 3fh. non-transparent configuration spaces at offsets 80h to ffh (table 6-5) are accessible by primary and secondary masters. to avoid corruption by other masters, the pci 6540 implements a non-transparent configuration ownership semaphore register (ntcos; pci:d2h). use this register for configuration writes to the registers listed in table 6-5. note: to prevent unintended corruption of configuration registers, use the correct byte size when accessing the configuration registers. 6.2.2.1 primary port pci type 0 header registers note: pciidr is shared by the primary and secondary ports. register 6-110. (pciidr; primary pci:00h, secondary pci:40h) pci configuration id bit description read write value after reset 15:0 vendor id. identifies device manufacturer. defaults to pci-sig-issued plx vendor id, 3388h, if a blank or no serial eeprom is present. yes only if hssrrc[7]=1; serial eeprom 3388h 31:16 device id. identifies particular device. defaults to plx pci 6540 part number (0029h), if a blank or no serial eeprom is present. note: in transparent mode, defaults to 0028h. yes only if hssrrc[7]=1; serial eeprom 0029h
section 6 pci configuration register address mapping ? non-transparent mode registers pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 6-63 6 ? registers register 6-111. (pcicr; primary pci:04h, secondary pci:44h) primary pci command bit description read write value after reset 0 i/o space enable. controls bridge response to i/o accesses on primary interface. values: 0 = ignores i/o transactions 1 = enables response to i/o transactions yes primary: yes secondary: no 0 1 memory space enable. controls bridge response to memory accesses on primary interface. values: 0 = ignores memory transactions 1 = enables response to memory transactions yes primary: yes secondary: no 0 2 master enable. controls bridge ability to operate as a master on primary interface. values: 0 = does not initiate transactions on primary interface, and disables response to memory or i/o transactions on secondary interface 1 = enables the bridge to operate as a master on primary interface yes primary: yes secondary: no 0 3 special cycle enable. not supported. yes no 0 4 memory write and invalidate enable. not supported. yes no 0 5 vga palette snoop enable. controls bridge response to vga-compatible palette accesses. values: 0 = ignores vga palette accesses on primary interface 1 = enables response to vga palette writes on primary interface (i/o address ad[9:0]=3c6h, 3c8h, and 3c9h) yes primary: yes secondary: no 0 6 parity error response enable. controls bridge response to parity errors. values: 0 = ignores parity errors 1 = performs normal parity checking yes primary: yes secondary: no 0 7 wait cycle control. if set to 1, pci 6540 performs address/ data stepping. yes primary: yes secondary: no 1 8 p_serr# enable. controls enable for the primary system error (p_serr#) pin. values: 0 = disables p_serr# driver 1 = enables p_serr# driver yes primary: yes secondary: no 0 9 fast back-to-back enable. controls bridge ability to generate fast back-to-back transactions to various devices on primary interface. values: 0 = no fast back-to-back transactions 1 = reserved ; pci 6540 does not generate fast back-to- back cycles yes primary: yes secondary: no 0 15:10 reserved. yes no 0h
section 6 registers pci configuration register address mapping ? non-transparent mode pci 6540 data book, version 1.0 6-64 ? 2003 plx technology, inc. all rights reserved. register 6-112. (pcisr; primary pci:06h, secondary pci:46h) primary pci status bit description read write value after reset 3:0 reserved. yes no 0h 4 new capability functions support. writing 1 supports new capabilities functions. the new capability function id is located at the pci configuration space offset determined by the new capabilities linked list pointer value at cap_ptr; primary pci:34h, secondary pci:74h. yes no 1 5 66 mhz-capable. if set to 1, this device supports a 66 mhz pci clock environment. yes no 1 6 udf. no user-definable features. yes no 0 7 fast back-to-back capable. fast back-to-back write capable on primary port. yes no 0 8 data parity error detected. set when the following conditions are met:  p_perr# is asserted, and  command register parity error response enable bit is set (pcicr[6]=1; primary pci:04h, secondary pci:44h) writing 1 clears bit to 0. yes primary: yes/clr secondary: no 0 10:9 devsel# timing. reads as 01b to indicate pci 6540 responds no slower than with medium timing. yes no 01b 11 signaled target abort. set by a target device whenever a target abort cycle occurs. writing 1 clears bit to 0. yes primary: yes/clr secondary: no 0 12 received target abort. set to 1 by the pci 6540 when transactions are terminated with target abort. writing 1 clears bit to 0. yes primary: yes/clr secondary: no 0 13 received master abort. set to 1 by the pci 6540 when transactions are terminated with master abort. writing 1 clears bit to 0. yes primary: yes/clr secondary: no 0 14 signaled system error. set when p_serr# is asserted. writing 1 clears bit to 0. yes primary: yes/clr secondary: no 0 15 detected parity error. set when a parity error is detected, regardless of the parity error response enable bit state (pcicr[6]=x; primary pci:04h, secondary pci:44h). writing 1 clears bit to 0. yes primary: yes/clr secondary: no 0
section 6 pci configuration register address mapping ? non-transparent mode registers pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 6-65 6 ? registers note: pcirev is shared by the primary and secondary ports. note: pciccr is shared by the primary and secondary ports. register 6-113. (pcirev; primary pci:08h, secondary pci:48h) pci revision id bit description read write value after reset 7:0 revision id. pci 6540 revision. yes no 1h register 6-114. (pciccr; primary pci:09h ? 0bh, secondary pci:49h ? 4bh) pci class code bit description read write value after reset 7:0 register level programming interface. none defined. yes only if hssrrc[7]=1; serial eeprom 0h 15:8 subclass code. pci-to-pci bridge (transparent mode) or other bridge device (non-transparent mode). yes only if hssrrc[7]=1; serial eeprom transparent mode = 04h. non- transparent mode = 80h 23:16 base class code. bridge device. yes only if hssrrc[7]=1; serial eeprom 06h
section 6 registers pci configuration register address mapping ? non-transparent mode pci 6540 data book, version 1.0 6-66 ? 2003 plx technology, inc. all rights reserved. note: pcihtr is shared by the primary and secondary ports. register 6-115. (pciclsr; primary pci:0ch, secondary pci:4ch) primary pci cache line size bit description read write value after reset 7:0 system cache line size. specified in units of 32-bit words (dwords). only cache line sizes which are a power of two are valid. maximum value is 20h. for values greater than 20h, pci 6540 operates as if pciclsr is programmed with value of 08h. used when terminating memory write and invalidate transactions. memory read prefetching is controlled by the prefetch count registers. yes primary: yes secondary: no 0h register 6-116. (pciltr; primary pci:0dh, secondary pci:4dh) primary pci bus latency timer bit description read write value after reset 7:0 primary pci bus latency timer. specifies the amount of time (in units of pci bus clocks) the pci 6540, as a bus master, can burst data on the primary pci bus. yes primary: yes secondary: no 0h register 6-117. (pcihtr; primary pci:0eh, secondary pci:4eh) pci header type bit description read write value after reset 6:0 configuration layout type. specifies the layout of registers 10h to 3fh in configuration space. header type 0 is defined for pci devices other than pci-to-pci bridges (header type 1) and cardbus bridges (header type 2). note: default value is 1h in transparent mode. yes only if hssrrc[7]=1; serial eeprom 0h 7 multi-function device. value of 1 indicates multiple (up to eight) functions (logical devices), each containing its own, individually addressable configuration space, 64 dwords in size. yes only if hssrrc[7]=1; serial eeprom 0 register 6-118. (pcibistr; primary pci:0fh, secondary pci:4fh) pci built-in self-test bit description read write value after reset 7:0 built-in self test (bist). not supported. yes no 0h
section 6 pci configuration register address mapping ? non-transparent mode registers pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 6-67 6 ? registers note: * on the primary bus, the value can be changed or written through the extended register index and data registers (extridx; pci:d3h and extrdata; pci:d4h, respectively), as detailed in section 6.2.4.14. register 6-119. (pcibar0; primary pci:10h, secondary pci:50h) pci downstream i/o or memory bar 0 bit description read write value after reset 0 memory space indicator. writing 0 indicates the register maps into memory space. writing 1 indicates the register maps into i/o space. yes primary: by way of dwnbar0msk[6]* secondary: no 0 2:1 register location (if memory space). when mapped into i/o space (pcibar0[0]=1), bits [3:1] are reserved . therefore, i/o base addresses must always be mapped to a 16-byte boundary. values: 00b = locate anywhere in 32-bit memory address space 01b = reserved yes no 00b 3 prefetchable (if memory space). writing 1 indicates there are no side effects on reads. when mapped into i/o space (pcibar0[0]=1), bits [3:1] are reserved . therefore, i/o base addresses must always be mapped to a 16-byte boundary. reflects xb_mem pin status. yes primary: by way of dwnbar0msk[7]* secondary: no xb_mem 31:4 base address. base address for downstream accesses. yes primary: yes secondary: no 0h
section 6 registers pci configuration register address mapping ? non-transparent mode pci 6540 data book, version 1.0 6-68 ? 2003 plx technology, inc. all rights reserved. note: * on the primary bus, the value can be changed or written through the extended register index and data registers (extridx; pci:d3h and extrdata; pci:d4h, respectively), as detailed in section 6.2.4.14. register 6-120. (pcibar1; primary pci:14h, secondary pci:54h) pci downstream memory bar 1 bit description read write value after reset 0 memory space indicator. writing 0 indicates the register maps into memory space. yes no 0 2:1 register location. values: 00b = locate anywhere in 32-bit memory address space 01b = reserved 10b = locate anywhere in 64-bit pci address space only pcibar1[2] can be written by way of dwnbar1msk[14]. pcibar1[1] is read-only. yes primary: by way of dwnbar1msk[14]* secondary: no 00b 3 prefetchable. writing 1 indicates there are no side effects on reads. reflects xb_mem pin status. yes primary: by way of dwnbar1msk[15]* secondary: no xb_mem 31:4 base address. base address for downstream accesses. yes primary: yes secondary: no 0h
section 6 pci configuration register address mapping ? non-transparent mode registers pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 6-69 6 ? registers notes: * on the primary bus, the dwnbarxmsk value can be changed or written through the extended register index and data registers (extridx; pci:d3h and extrdata; pci:d4h, respectively), as detailed in section 6.2.4.14. when using 64-bit addressing (dwnbar1msk[14]=1) for pcibar1, pcibar2 becomes the upper 32 bits of the pcibar1 address and is accessed using normal type 0 configuration accesses. register 6-121. (pcibar2; primary pci:18h, secondary pci:58h) pci downstream memory bar 2 or downstream memory bar 1 upper 32 bits bit description read write value after reset 0 memory space indicator. writing 0 indicates the register maps into memory space. yes primary: no: dwnbar1msk[14]=0 yes*: dwnbar1msk[14]=1 secondary: no 0 2:1 register location. values: 00b = locate anywhere in 32-bit memory address space 01b = reserved yes primary: no: dwnbar1msk[14]=0 yes*: dwnbar1msk[14]=1 secondary: no 00b 3 prefetchable. writing 1 indicates there are no side effects on reads. dwnbar2msk[23] can only be used to set the space as prefetchable if dwnbar1msk[14]=0. reflects xb_mem pin status. yes primary: by way of dwnbar2msk[23]* secondary: no xb_mem 31:4 base address. downstream access base address. yes yes 0h
section 6 registers pci configuration register address mapping ? non-transparent mode pci 6540 data book, version 1.0 6-70 ? 2003 plx technology, inc. all rights reserved. note: pcisvid is shared by the primary and secondary ports. note: pcisid is shared by the primary and secondary ports. note: cap_ptr is shared by the primary and secondary ports. register 6-122. (pcisvid; primary pci:2ch, secondary pci:6ch) pci subsystem vendor id bit description read write value after reset 15:0 subsystem vendor id. unique add-in board vendor id. pci-sig-issued plx vendor id (3388h), if a blank or no serial eeprom is present. yes only if hssrrc[7]=1; serial eeprom 3388h register 6-123. (pcisid; primary pci:2eh, secondary pci:6eh) pci subsystem id bit description read write value after reset 15:0 subsystem id. unique add-in board device id. defaults to plx pci 6540 part number (0029h), if a blank or no serial eeprom is present. note: in transparent mode, defaults to 0028h. yes only if hssrrc[7]=1; serial eeprom 0029h register 6-124. (cap_ptr; primary pci:34h, secondary pci:74h) new capability pointer bit description read write value after reset 7:0 new capability pointer. provides an offset into pci configuration space for the power management capability location in the new capabilities linked list. yes no dch 31:8 reserved. yes no 0h
section 6 pci configuration register address mapping ? non-transparent mode registers pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 6-71 6 ? registers register 6-125. (pcipilr; pci:3ch, secondary pci:7ch) primary pci interrupt line bit description read write value after reset 7:0 interrupt line routing value. indicates which input of the system interrupt controller(s) is connected to the pci 6540 interrupt line. yes yes 0h register 6-126. (pcipipr; pci:3dh, secondary pci:7dh) primary pci interrupt pin bit description read write value after reset 7:0 interrupt pin. indicates which interrupt pin the pci 6540 uses. value: 1h = interrupt pin p_inta# yes no 1h register 6-127. (pcipmgr; pci:3eh, secondary pci:7eh) primary pci minimum grant bit description read write value after reset 7:0 primary min_gnt. specifies how long a burst period the pci 6540 needs. yes only if hssrrc[7]=1 0h register 6-128. (pcipmlr; pci:3fh, secondary pci:7fh) primary pci maximum latency bit description read write value after reset 7:0 primary max_lat. specifies how often pci 6540 must gain access to the primary pci bus. yes only if hssrrc[7]=1 0h
section 6 registers pci configuration register address mapping ? non-transparent mode pci 6540 data book, version 1.0 6-72 ? 2003 plx technology, inc. all rights reserved. 6.2.2.2 secondary port pci type 0 header registers note: pciidr is shared by the primary and secondary ports. register 6-129. (pciidr; primary pci:40h, secondary pci:00h) pci configuration id bit description read write value after reset 15:0 vendor id. identifies pci 6540 manufacturer. defaults to pci-sig-issued plx vendor id (3388h), if a blank or no serial eeprom is present. yes only if hssrrc[7]=1; serial eeprom 3388h 31:16 device id. identifies the particular device. defaults to plx pci 6540 part number (0029h), if a blank or no serial eeprom is present. note: in transparent mode, defaults to 0028h. yes only if hssrrc[7]=1; serial eeprom 0029h register 6-130. (pciscr; primary pci:44h, secondary pci:04h) secondary pci command bit description read write value after reset 0 i/o space enable. controls bridge response to i/o accesses on secondary interface. values: 0 = ignores i/o transactions 1 = enables response to i/o transactions yes primary: no secondary: yes 0 1 memory space enable. controls bridge response to memory accesses on secondary interface. values: 0 = ignores memory transactions 1 = enables response to memory transactions yes primary: no secondary: yes 0 2 master enable. controls bridge ability to operate as a master on secondary interface. values: 0 = does not initiate transactions on secondary interface and disables response to memory or i/o transactions on primary interface 1 = enables the bridge to operate as a master on secondary interface yes primary: no secondary: yes 0 3 special cycle enable. not supported. yes no 0 4 memory write and invalidate enable. not supported. yes no 0 5 vga palette snoop enable. controls bridge response to vga-compatible palette accesses. values: 0 = ignores vga palette accesses on secondary interface 1 = enables response to vga palette writes on secondary interface (i/o address ad[9:0]=3c6h, 3c8h, and 3c9h) yes primary: no secondary: yes 0 6 parity error response enable. controls bridge response to parity errors. values: 0 = ignores parity errors 1 = performs normal parity checking yes primary: no secondary: yes 0 7 wait cycle control. if set to 1, pci 6540 performs address/ data stepping. yes primary: no secondary: yes 1
section 6 pci configuration register address mapping ? non-transparent mode registers pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 6-73 6 ? registers 8 s_serr# enable. controls enable for secondary system error (s_serr#) pin. values: 0 = disables s_serr# driver 1 = enables s_serr# driver yes primary: no secondary: yes 0 9 fast back-to-back enable. controls bridge ability to generate fast back-to-back transactions to various devices on secondary interface. values: 0 = no fast back-to-back transactions 1 = reserved ; pci 6540 does not generate fast back-to- back cycles yes primary: no secondary: yes 0 15:10 reserved. yes no 0h register 6-130. (pciscr; primary pci:44h, secondary pci:04h) secondary pci command (continued) bit description read write value after reset register 6-131. (pcissr; primary pci:46h, secondary pci:06h) secondary pci status bit description read write value after reset 3:0 reserved. yes no 0h 4 new capability functions support. writing 1 supports new capabilities functions. the new capability function id is located at the pci configuration space offset determined by the new capabilities linked list pointer value at cap_ptr; primary pci:34h, secondary pci:74h. yes no 1 5 66 mhz-capable. if set to 1, supports a 66 mhz pci clock environment. yes no 1 6 udf. no user-definable features. yes no 0 7 fast back-to-back capable. fast back-to-back write capable on secondary port. yes no 0 8 data parity error detected. set when the following conditions are met:  s_perr# is asserted, and  command register parity error response enable bit is set (pcicr[6]=1; primary pci:04h, secondary pci:44h) writing 1 clears bit to 0. yes primary: no secondary: yes/clr 0 10:9 devsel# timing. reads as 01b to indicate pci 6540 responds no slower than with medium timing. yes no 01b 11 signaled target abort. set by a target device when a target abort cycle occurs. writing 1 clears bit to 0. yes primary: no secondary: yes/clr 0
section 6 registers pci configuration register address mapping ? non-transparent mode pci 6540 data book, version 1.0 6-74 ? 2003 plx technology, inc. all rights reserved. note: pcirev is shared by the primary and secondary ports. note: pciccr is shared by the primary and secondary ports. 12 received target abort. set to 1 by pci 6540 when transactions are terminated with target abort. writing 1 clears bit to 0. yes primary: no secondary: yes/clr 0 13 received master abort. set to 1 by pci 6540 when transactions are terminated with master abort. writing 1 clears bit to 0. yes primary: no secondary: yes/clr 0 14 signaled system error. set when s_serr# is asserted. writing 1 clears bit to 0. yes primary: no secondary: yes/clr 0 15 detected parity error. set when a parity error is detected, regardless of the parity error response enable bit state (pcicr[6]=x; primary pci:04h, secondary pci:44h). writing 1 clears bit to 0. yes primary: no secondary: yes/clr 0 register 6-131. (pcissr; primary pci:46h, secondary pci:06h) secondary pci status (continued) bit description read write value after reset register 6-132. (pcirev; primary pci:48h, secondary pci:08h) pci revision id bit description read write value after reset 7:0 revision id. pci 6540 revision. yes no 1h register 6-133. (pciccr; primary pci:49h ? 4bh, secondary pci:09h ? 0bh) pci class code bit description read write value after reset 7:0 register level programming interface. none defined. yes only if hssrrc[7]=1; serial eeprom 0h 15:8 subclass code. pci-to-pci bridge (transparent mode) or other bridge device (non-transparent mode). yes only if hssrrc[7]=1; serial eeprom transparent mode = 04h. non- transparent mode = 80h 23:16 base class code. bridge device. yes only if hssrrc[7]=1; serial eeprom 06h
section 6 pci configuration register address mapping ? non-transparent mode registers pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 6-75 6 ? registers note: pcihtr is shared by the primary and secondary ports. register 6-134. (pcisclsr; primary pci:4ch, secondary pci:0ch) secondary pci cache line size bit description read write value after reset 7:0 system cache line size. specified in units of 32-bit words (dwords). only cache line sizes which are a power of two are valid. maximum value is 20h. for values greater than 20h, pci 6540 operates as if pcisclsr is programmed with value of 08h. used when terminating memory write and invalidate transactions. memory read prefetching is controlled by the prefetch count registers. yes primary: no secondary: yes 0h register 6-135. (pcisltr; primary pci:4dh, secondary pci:0dh) secondary pci bus latency timer bit description read write value after reset 7:0 secondary pci bus latency timer. specifies the amount of time (in units of pci bus clocks) the pci 6540, as a bus master, can burst data on the secondary pci bus. yes primary: no secondary: yes 0h register 6-136. (pcihtr; primary pci:4eh, secondary pci:0eh) pci header type bit description read write value after reset 6:0 configuration layout type. specifies the layout of registers 10h to 3fh in configuration space. header type 0 is defined for pci devices other than pci-to-pci bridges (header type 1) and cardbus bridges (header type 2). note: default value is 1h in transparent mode. yes only if hssrrc[7]=1; serial eeprom 0h 7 multi-function device. value of 1 indicates multiple (up to eight) functions (logical devices), each containing its own, individually addressable configuration space, 64 dwords in size. yes only if hssrrc[7]=1; serial eeprom 0 register 6-137. (pcibistr; primary pci:4fh, secondary pci:0fh) pci built-in self-test bit description read write value after reset 7:0 built-in self test (bist). not supported. yes no 0h
section 6 registers pci configuration register address mapping ? non-transparent mode pci 6540 data book, version 1.0 6-76 ? 2003 plx technology, inc. all rights reserved. note: * on the secondary bus, the value can be changed or written through the extended register index and data registers (extridx; pci:d3h and extrdata; pci:d4h, respectively), as detailed in section 6.2.4.14. register 6-138. (pciubar0; primary pci:50h, secondary pci:10h) pci upstream i/o or memory bar 0 bit description read write value after reset 0 memory space indicator. writing 0 indicates the register maps into memory space. writing 1 indicates the register maps into i/o space. yes primary: no secondary: by way of upsbar0msk[6]* 0 2:1 register location (if memory space). when mapped into i/o space (pciubar0[0]=1), bits [3:1] are reserved . therefore, i/o base addresses must always be mapped to a 16-byte boundary. values: 00b = locate anywhere in 32-bit memory address space 01b = reserved yes no 00b 3 prefetchable (if memory space). writing 1 indicates there are no side effects on reads. when mapped into i/o space (pciubar0[0]=1), bits [3:1] are reserved . therefore, i/o base addresses must always be mapped to a 16-byte boundary. reflects xb_mem pin status. yes primary: no secondary: by way of upsbar0msk[7]* xb_mem 31:4 base address. base address for upstream accesses. yes primary: no secondary: yes 0h
section 6 pci configuration register address mapping ? non-transparent mode registers pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 6-77 6 ? registers note: * on the secondary bus, the value can be changed or written through the extended register index and data registers (extridx; pci:d3h and extrdata; pci:d4h, respectively), as detailed in section 6.2.4.14. register 6-139. (pciubar1; primary pci:54h, secondary pci:14h) pci upstream memory bar 1 bit description read write value after reset 0 memory space indicator. writing 0 indicates the register maps into memory space. yes no 0 2:1 register location. values: 00b = locate anywhere in 32-bit memory address space 01b = reserved 10b = locate anywhere in 64-bit pci address space only pciubar1[2] can be written by way of upsbar1msk[14]. pciubar1[1] is read-only. yes primary: no secondary: by way of upsbar1msk[14]* 00b 3 prefetchable. writing 1 indicates there are no side effects on reads. reflects xb_mem pin status. yes primary: no secondary: by way of upsbar1msk[15]* xb_mem 31:4 base address. base address for upstream accesses. yes primary: no secondary: yes 0h
section 6 registers pci configuration register address mapping ? non-transparent mode pci 6540 data book, version 1.0 6-78 ? 2003 plx technology, inc. all rights reserved. notes: * on the secondary bus, the upsbarxmsk value can be changed or written through the extended register index and data registers (extridx; pci:d3h and extrdata; pci:d4h, respectively), as detailed in section 6.2.4.14. when using 64-bit addressing (upsbar1msk[14]=1) for pciubar1, pciubar2 becomes the upper 32 bits of the pciubar1 address and is accessed using normal type 0 configuration accesses. register 6-140. (pciubar2; primary pci:58h, secondary pci:18h) pci upstream memory bar 2 or upstream memory bar 1 upper 32 bits bit description read write value after reset 0 memory space indicator. writing 0 indicates the register maps into memory space. yes primary: no secondary: no: upsbar1msk[14]=0 yes*: upsbar1msk[14]=1 0 2:1 register location. values: 00b = locate anywhere in 32-bit memory address space 01b = reserved yes primary: no secondary: no: upsbar1msk[14]=0 yes*: upsbar1msk[14]=1 00b 3 prefetchable. writing 1 indicates there are no side effects on reads. upsbar2msk[23] can only be used to set the space as prefetchable if upsbar1msk[14]=0. reflects xb_mem pin status. yes primary: no secondary: by way of upsbar2msk[23]* xb_mem 31:4 base address. base address for upstream accesses. yes primary: no secondary: yes 0h
section 6 pci configuration register address mapping ? non-transparent mode registers pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 6-79 6 ? registers note: pcisvid is shared by the primary and secondary ports. note: pcisid is shared by the primary and secondary ports. note: cap_ptr is shared by the primary and secondary ports. register 6-141. (pcisvid; primary pci:6ch, secondary pci:2ch) pci subsystem vendor id bit description read write value after reset 15:0 subsystem vendor id. unique add-in board vendor id (3388h), if a blank or no serial eeprom is present. yes only if hssrrc[7]=1; serial eeprom 3388h register 6-142. (pcisid; primary pci:6eh, secondary pci:2eh) pci subsystem id bit description read write value after reset 15:0 subsystem id. unique add-in board device id. defaults to plx pci 6540 part number (0029h), if a blank or no serial eeprom is present. note: in transparent mode, defaults to 0028h. yes only if hssrrc[7]=1; serial eeprom 0029h register 6-143. (cap_ptr; primary pci:74h, secondary pci:34h) new capability pointer bit description read write value after reset 7:0 new capability pointer. provides an offset into pci configuration space for the power management capability location in the new capabilities linked list. yes no dch 31:8 reserved. yes no 0h
section 6 registers pci configuration register address mapping ? non-transparent mode pci 6540 data book, version 1.0 6-80 ? 2003 plx technology, inc. all rights reserved. register 6-144. (pcisilr; pci:7ch, secondary pci:3ch) secondary pci interrupt line bit description read write value after reset 7:0 interrupt line routing value. indicates which input of the system interrupt controller(s) is connected to the pci 6540 interrupt line. yes yes 0h register 6-145. (pcisipr; pci:7dh, secondary pci:3dh) secondary pci interrupt pin bit description read write value after reset 7:0 interrupt pin. indicates which interrupt pin the pci 6540 uses. value: 1h = interrupt pin s_inta# yes no 1h register 6-146. (pcismgr; pci:7eh, secondary pci:3eh) secondary pci minimum grant bit description read write value after reset 7:0 secondary min_gnt. specifies how long a burst period the pci 6540 needs. yes only if hssrrc[7]=1 0h register 6-147. (pcismlr; pci:7fh, secondary pci:3fh) secondary pci maximum latency bit description read write value after reset 7:0 secondary max_lat. specifies how often pci 6540 must gain access to the secondary pci bus. yes only if hssrrc[7]=1 0h
section 6 pci configuration register address mapping ? non-transparent mode registers pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 6-81 6 ? registers 6.2.3 pci shadow configuration registers ? non-transparent mode normally, registers at offsets 40h to 7fh reflect the image of the opposite port pci configuration registers. in addition, shadow registers at offsets 42h to 7fh can be accessed by setting the chip control register transparent access bit to 1 (ccntrl[6]=1; pci:d8h). these are shared miscellaneous control registers that are also used in transparent mode. these registers are restored to their default values upon p_rstin# assertion and are accessible only by the primary port. table 6-6. pci configuration shadow register map ? pci offset used only when ccntrl[6]=1, non-transparent mode pci configuration register address to ensure software compatibility with other versions of the pci 6540 family and to ensure compatibility with future enhancements, write 0 to all unused bits. pci writable serial eeprom writable primary offset secondary offset 31 24 23 16 15 8 70 40h 40h bridge control reserved yes no 44h 44h miscellaneous options timeout control primary flow- through control yes yes 48h 48h secondary incremental prefetch count primary incremental prefetch count secondary initial prefetch count primary initial prefetch count yes yes 4ch 4ch buffer control secondary flow- through control secondary maximum prefetch count primary maximum prefetch count yes yes 50h 50h reserved test internal arbiter control yes no 54h 54h serial eeprom data serial eeprom address serial eeprom control yes no 58h 58h reserved no no 5ch 5ch reserved no no 60h 60h timer counter timer control reserved yes no 74h ? 7fh 74h ? 7fh reserved no no
section 6 registers pci configuration register address mapping ? non-transparent mode pci 6540 data book, version 1.0 6-82 ? 2003 plx technology, inc. all rights reserved. 6.2.3.1 primary flow-through control registers register 6-148. (bcntrl; pci:42h) bridge control bit description read write value after reset 0 parity error response enable. controls bridge response to parity errors on secondary interface. values: 0 = ignores address and data parity errors on secondary interface 1 = enables parity error reporting and detection on secondary interface yes yes 0 1 s_serr# enable. controls s_serr# forwarding to the primary interface. values: 0 = disables s_serr# forwarding to primary interface 1 = enables s_serr# forwarding to primary interface yes yes 0 2 isa enable. controls bridge response to isa i/o addresses, which is limited to the first 64 kb. values: 0 = forwards i/o addresses in the range defined by the i/o base and i/o limit registers (pciiobar; pci:1ch and pciiolmt; pci:1dh, respectively). 1 = blocks forwarding of isa i/o addresses in the range defined by the i/o base and i/o limit registers that are in the first 64 kb of i/o space that address the last 768 bytes in each 1-kb block. secondary i/o transactions are forwarded upstream if the address falls within the last 768 bytes in each 1-kb block. command configuration register master enable bit must also be set (pcicr[2]=1; primary pci:04h, secondary pci:44h) to enable isa. yes yes 0 3 vga enable. controls bridge response to vga-compatible addresses. values: 0 = does not forward vga-compatible memory and i/o addresses from primary to secondary 1 = forwards vga-compatible memory and i/o address from primary to secondary, regardless of other settings yes yes 0 4 reserved. yes no 0 5 master abort mode. controls bridge behavior in response to master aborts on secondary interface. values: 0 = does not report master aborts (returns ffff_ffffh on reads and discards data on writes). 1 = reports master aborts by signaling target abort. if the master abort is the result of a primary-to-secondary posted write cycle, p_serr# is asserted (pcicr[8]=1; primary pci:04h, secondary pci:44h). note: during lock cycles, pci 6540 ignores this bit, and completes the cycle as a target abort. yes yes 0 6 secondary reset. forces s_rstout# assertion on secondary interface. values: 0 = does not force s_rstout# assertion 1 = forces s_rstout# assertion yes yes 0 7 fast back-to-back enable. controls bridge ability to generate fast back-to-back transactions to various devices on secondary interface. values: 0 = no fast back-to-back transaction 1 = reserved ; pci 6540 does not generate fast back-to- back cycles yes yes 0
section 6 pci configuration register address mapping ? non-transparent mode registers pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 6-83 6 ? registers 8 primary master timeout. sets the maximum number of pci clocks for an initiator on the primary bus to repeat the delayed transaction request. values: 0 = timeout after 2 15 pci clocks 1 = timeout after 2 10 pci clocks yes yes 0 9 secondary master timeout. sets the maximum number of pci clocks for an initiator on the secondary bus to repeat the delayed transaction request. values: 0 = timeout after 2 15 pci clocks 1 = timeout after 2 10 pci clocks yes yes 0 10 master timeout status. set to 1 when primary or secondary master timeout occurs. writing 1 clears bit to 0. yes yes/clr 0 11 master timeout p_serr# enable. enables p_serr# assertion during master timeout. values: 0 = p_serr# not asserted on master timeout 1 = p_serr# asserted on primary or secondary master timeout yes yes 0 12 master timeout s_serr# enable. enables s_serr# assertion during master timeout. values: 0 = s_serr# not asserted on master timeout 1 = s_serr# asserted on either primary or secondary master timeout yes yes 0 13 p_serr# enable. controls p_serr# forwarding to the secondary interface. values: 0 = disables p_serr# forwarding to secondary port 1 = enable the p_serr# forwarding to secondary port yes yes 0 15:14 reserved. yes no 00b register 6-148. (bcntrl; pci:42h) bridge control (continued) bit description read write value after reset
section 6 registers pci configuration register address mapping ? non-transparent mode pci 6540 data book, version 1.0 6-84 ? 2003 plx technology, inc. all rights reserved. register 6-149. (pftcr; pci:44h) primary flow-through control bit description read write value after reset 2:0 primary posted write completion wait count. maximum number of clocks the pci 6540 waits for posted write data from the initiator if delivering write data in flow-through mode and the internal post write queues are almost empty. if the count is exceeded without additional data from the initiator, the cycle to the target is terminated and completed later. values: 000b = de-asserts s_irdy# and waits seven clocks for data on the primary bus before terminating cycle (same as 111b) 001b = de-asserts s_irdy# and waits one clock for data on the primary bus before terminating cycle ? 111b = de-asserts s_irdy# and waits seven clocks for data on the primary bus before terminating cycle yes yes; serial eeprom 000b 3 reserved. yes no 0 6:4 primary delayed read completion wait count. maximum number of clocks the pci 6540 waits for delayed read data from the target if returning read data in flow-through mode and the internal delayed read queue is almost full. if the count is exceeded without additional space in the queue, the cycle to the target is terminated, and completed when the initiator retries the remainder of the cycle. values: 000b = de-asserts s_irdy# and waits seven clocks for further data to be transferred to the primary bus before terminating cycle (same as 111b) 001b = de-asserts s_irdy# and waits one clock for additional space to be transferred to the primary bus before terminating cycle ? 111b = de-asserts s_irdy# and waits seven clocks for further data to be transferred to the primary bus before terminating cycle yes yes; serial eeprom 000b 7 reserved. yes no 0
section 6 pci configuration register address mapping ? non-transparent mode registers pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 6-85 6 ? registers 6.2.3.2 timeout control register register 6-150. (tocntrl; pci:45h) timeout control bit description read write value after reset 2:0 maximum retry counter control. controls the maximum number of times the pci 6540 retries a cycle before signaling a timeout. this timeout applies to read/write retries and can be enabled to trigger serr# on the primary or secondary port, depending on serr# events enabled. maximum number of retries to timeout: 000b = 2 24 001b = 2 18 010b = 2 12 011b = 2 6 111b = 2 0 yes yes; serial eeprom 000b 7:3 reserved. yes no 0
section 6 registers pci configuration register address mapping ? non-transparent mode pci 6540 data book, version 1.0 6-86 ? 2003 plx technology, inc. all rights reserved. 6.2.3.3 miscellaneous options register register 6-151. (mscopt; pci:46h) miscellaneous options bit description read write value after reset 0 write completion wait for perr#. if set to 1, pci 6540 waits for target perr# status before completing a delayed write transaction to the initiator. yes yes; serial eeprom 0 1 read completion wait for par. if set to 1, pci 6540 waits for target par status before completing a delayed read transaction to the initiator. yes yes; serial eeprom 0 2 drt out-of-order enable. if set to 1, pci 6540 may return delayed read transactions in a different order than requested. otherwise, delayed read transactions are returned in the same order as requested. yes yes; serial eeprom 0 3 generate parity enable. values: 0 = passes along the par/par64 cycle as stored in the internal buffers 1 = pci 6540, as a master, generates par/par64 to cycles going across the bridge yes yes; serial eeprom 0 6:4 address step control. during type 0 configuration cycles, pci 6540 drives the address for the number of clocks specified in these bits before asserting frame#. defaults to 001b in conventional pci mode. in pci-x mode, these bits have no effect and address stepping is hardcoded to four clocks. values: 000b = concurrently asserts frame# and drives the address on the bus 001b = asserts frame# one clock after driving the address on the bus ? 111b = asserts frame# seven clocks after driving the address on the bus yes yes; serial eeprom 001b 7 p_req64#. value reflected by the p_req64# signal during reset. yes yes; serial eeprom 0
section 6 pci configuration register address mapping ? non-transparent mode registers pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 6-87 6 ? registers 8 s_req64#. value reflected by the s_req64# signal during reset. yes yes; serial eeprom 1 9 prefetch early termination. values: 0 = terminates prefetching at the initial prefetch count if flow through is not achieved, and another prefetching read cycle is accepted by the pci 6540 1 = completes prefetching as programmed by the prefetch count registers, regardless of other outstanding prefetchable reads in the transaction queue yes yes; serial eeprom 0 10 read minimum enable. if set to 1, pci 6540 only initiates read cycles if there is sufficient available space in the fifo as required by the prefetch count registers. yes yes; serial eeprom 0 15, 11 force 64-bit control. if set and the target supports 64-bit transfers, 32-bit prefetchable reads or 32-bit posted memory write cycles on one side are converted to 64-bit cycles on completion at the target bus. if set to 0, cycles are not converted. values: 00b = disable (default) 01b = convert to 64-bit command on both ports 10b = convert to 64-bit command on secondary port 11b = convert to 64-bit command on primary port yes yes; serial eeprom 00b 12 memory write and invalidate control. values: 0 = retries memory write and invalidate commands, if there is insufficient space for one cache line of data in the internal queues. 1 = passes memory write and invalidate commands, if there are one or more cache lines of fifo space available. if there is insufficient space, completes as a memory write cycle. yes yes; serial eeprom 0 13 primary lock enable. if set to 1, pci 6540 follows the lock protocol on primary interface; otherwise, lock is ignored. yes yes; serial eeprom 0 14 secondary lock enable. if set to 1, pci 6540 follows the lock protocol on secondary interface; otherwise, lock is ignored. yes yes; serial eeprom 0 register 6-151. (mscopt; pci:46h) miscellaneous options (continued) bit description read write value after reset
section 6 registers pci configuration register address mapping ? non-transparent mode pci 6540 data book, version 1.0 6-88 ? 2003 plx technology, inc. all rights reserved. 6.2.3.4 prefetch control registers shadow registers 48h to 4dh are the prefetch control registers, and used to fine-tune the pci 6540 memory read prefetch behavior. (refer to section 18, ? pci flow-through optimization, ? for detailed descriptions of these registers.) these registers apply only if there are one or more ports operating in conventional pci mode. register 6-152. (pitlpcnt; pci:48h) primary initial prefetch count bit description read write value after reset 0 reserved. yes no 0 2:1 pci-x primary initial prefetch count. when the primary bus is in pci-x mode, these bits control the initial prefetch count on the primary bus during reads to prefetchable memory space. value defines the cache line multiples for the initial prefetch count. prefetch as follows: 00b = 1 cache line (size defined by pciclsr; primary pci:0ch, secondary pci:4ch) 01b = 2 cache lines 10b = 4 cache lines 11b = 8 cache lines the primary pci-x 16 cache line prefetch bit (pincpcnt[1]; pci:4ah shadow register) enables prefetch of 16 cache lines. yes yes; serial eeprom 00b 5:3 pci primary initial prefetch count. when the primary bus is in conventional pci mode, these bits control the initial prefetch count on the primary bus during reads to prefetchable memory space. prefetch as follows: 001b = 08h dwords 010b = 10h dwords 101b = 20h dwords other values are reserved . yes yes; serial eeprom 001b 7:6 reserved. yes no 00b
section 6 pci configuration register address mapping ? non-transparent mode registers pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 6-89 6 ? registers register 6-153. (sitlpcnt; pci:49h) secondary initial prefetch count bit description read write value after reset 0 reserved. yes no 0 2:1 pci-x secondary initial prefetch count. when the secondary bus is in pci-x mode, these bits control the initial prefetch count on the secondary bus during reads initiated from the primary port. value defines the cache line multiples for the initial prefetch count. prefetch as follows: 00b = 1 cache line (size defined by pciclsr; primary pci:0ch, secondary pci:4ch) 01b = 2 cache lines 10b = 4 cache lines 11b = 8 cache lines the secondary pci-x 16 cache line prefetch bit (sincpcnt[1]; pci:4bh shadow register) enables prefetch of 16 cache lines. yes yes; serial eeprom 00b 5:3 pci secondary initial prefetch count. when the secondary bus is in conventional pci mode, these bits control the initial prefetch count on the secondary bus during reads initiated from the primary port. prefetch as follows: 001b = 08h dwords 010b = 10h dwords 101b = 20h dwords other values are reserved. yes yes; serial eeprom 001b 7:6 reserved. yes no 00b register 6-154. (pincpcnt; pci:4ah) primary incremental prefetch count bit description read write value after reset 0 reserved. yes no 0 1 primary pci-x 16 cache line prefetch. value: 1 = enables primary pci-x port to prefetch 16 cache lines. when set, the pci-x primary initial prefetch count bits are ignored (pitlpcnt[2:1]; pci:48h shadow register). yes yes; serial eeprom 0 5:2 primary incremental prefetch count. applies only to primary port conventional pci mode operation. these bits control the incremental read prefetch count. when an entry ? s remaining prefetch dword count falls below this value, the bridge prefetches an additional primary incremental prefetch count dwords. value is specified as a multiple of 4 x dwords. the register value must not exceed half the value programmed in the primary maximum prefetch count register (pmaxpcnt; pci:4ch); otherwise, no incremental prefetch is performed. prefetch as follows: 0000b = no incremental prefetch 0001b = 04h dwords 0010b = 08h dwords 0011b = 0ch dwords ? 1111b = 3ch dwords yes yes; serial eeprom 0000b 7:6 reserved. yes no 00b
section 6 registers pci configuration register address mapping ? non-transparent mode pci 6540 data book, version 1.0 6-90 ? 2003 plx technology, inc. all rights reserved. register 6-155. (sincpcnt; pci:4bh) secondary incremental prefetch count bit description read write value after reset 0 reserved. yes no 0 1 secondary pci-x 16 cache line prefetch. value: 1 = enable secondary pci-x port to prefetch 16 cache lines. when set, the pci-x secondary initial prefetch count bits are ignored (sitlpcnt[2:1]; pci:49h shadow register). yes yes; serial eeprom 0 5:2 secondary incremental prefetch count . applies only to secondary port conventional pci mode operation. controls the incremental read prefetch count. when an entry ? s remaining prefetch dword count falls below this value, the bridge prefetches an additional secondary incremental prefetch count dwords. value is specified as a multiple of 4 x dwords. the register value must not exceed half the value programmed in the secondary maximum prefetch count register (smaxpcnt; pci:4dh); otherwise, no incremental prefetch is performed. prefetch as follows: 0000b = no incremental prefetch 0001b = 04h dwords 0010b = 08h dwords 0011b = 0ch dwords ? 1111b = 3ch dwords yes yes; serial eeprom 0000b 7:6 reserved. yes no 00b
section 6 pci configuration register address mapping ? non-transparent mode registers pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 6-91 6 ? registers register 6-156. (pmaxpcnt; pci:4ch) primary maximum prefetch count bit description read write value after reset 5:0 primary maximum prefetch count. limits the cumulative maximum count of prefetchable dwords that are allocated to one entry on the primary bus when flow through for that entry was not achieved. value should be an even number. bit 0 is read-only and always 0. value is specified in dwords, except if 0 value is programmed, which sets the primary maximum prefetch count to its maximum value of 256 bytes. this feature applies only to pci-to-pci bridging. a pci read cycle causes a pci request for the maximum count data. yes yes [5:1]; serial eeprom 20h 7:6 reserved. yes no 00b register 6-157. (smaxpcnt; pci:4dh) secondary maximum prefetch count bit description read write value after reset 5:0 secondary maximum prefetch count. limits the cumulative maximum count of prefetchable dwords that are allocated to one entry on the secondary bus when flow through for that entry was not achieved. value should be an even number. bit 0 is read-only and always 0. value is specified in dwords, except if 0 value is programmed, which sets the secondary maximum prefetch count to its maximum value of 256 bytes. this feature applies only to pci-to-pci bridging. a pci read cycle causes a pci request for the maximum count data. yes yes [5:1]; serial eeprom 20h 7:6 reserved. yes no 00b
section 6 registers pci configuration register address mapping ? non-transparent mode pci 6540 data book, version 1.0 6-92 ? 2003 plx technology, inc. all rights reserved. 6.2.3.5 secondary flow-through control register register 6-158. (sftcr; pci:4eh) secondary flow-through control bit description read write value after reset 2:0 secondary posted write completion wait count. maximum number of clocks the pci 6540 waits for posted write data from the initiator if delivering write data in flow- through mode and the internal post write queues are almost empty. if the count is exceeded without additional data from the initiator, the cycle to the target is terminated and completed later. values: 000b = de-asserts p_irdy# and waits seven clocks for data on the secondary bus, before terminating cycle (same as 111b) 001b = de-asserts p_irdy# and waits one clock for data on the secondary bus before terminating cycle ? 111b = de-asserts p_irdy# and waits seven clocks for data on the secondary bus before terminating cycle yes yes; serial eeprom 000b 3 reserved. yes no 0 6:4 secondary delayed read completion wait count. maximum number of clocks the pci 6540 waits for delayed read data from the target if returning read data in flow- through mode and the internal delayed read queue is almost full. if the count is exceeded without additional space in the queue, the cycle to target is terminated, and completed when initiator retries the remainder of the cycle. values: 000b = de-asserts p_irdy# and waits seven clocks for additional space to be transferred to the secondary bus before terminating cycle (same as 111b) 001b = de-asserts p_irdy# and waits one clock for further data to be transferred to the secondary bus before terminating cycle ? 111b = de-asserts p_irdy# and waits seven clocks for further data to be transferred to the secondary bus before terminating cycle yes yes; serial eeprom 000b 7 reserved. yes no 0
section 6 pci configuration register address mapping ? non-transparent mode registers pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 6-93 6 ? registers 6.2.3.6 buffer and internal arbiter control registers register 6-159. (bufcr; pci:4fh) buffer control bit description read write value after reset 7:0 reserved. yes no 0h
section 6 registers pci configuration register address mapping ? non-transparent mode pci 6540 data book, version 1.0 6-94 ? 2003 plx technology, inc. all rights reserved. register 6-160. (iacntrl; pci:50h) internal arbiter control bit description read write value after reset 0 low-priority group fixed arbitration. if set to 1, the low-priority group uses fixed priority arbitration; otherwise, rotating priority arbitration is used. yes yes 0 1 low-priority group arbitration order. valid only when the low-priority arbitration group is set to a fixed arbitration scheme. values: 0 = priority decreases with bus master number. ( for example , assuming master 2 is set as the highest priority master, master 3 retains higher priority than master 4.) 1 = priority increases with bus master number. ( for example , assuming master 2 is set as the highest priority master, master 4 retains higher priority than master 3.) this order is relative to the master with the highest priority for this group, as specified in iacntrl[7:4]. yes yes 0 2 high-priority group fixed arbitration. if set to 1, the high-priority group uses the fixed priority arbitration; otherwise, rotating priority arbitration is used . yes yes 0 3 high-priority group arbitration order. valid only when the high-priority arbitration group is set to a fixed arbitration scheme. values: 0 = priority decreases with bus master number. ( for example , assuming master 2 is set as the highest priority master, master 3 retains higher priority than master 4.) 1 = priority increases with bus master number. ( for example , assuming master 2 is set as the highest priority master, master 4 retains higher priority than master 3.) this order is relative to the master with the highest priority for this group, as specified in iacntrl[11:8]. yes yes 0 7:4 highest priority master in low-priority group. controls which master in the low-priority group retains the highest priority. valid only if the group uses the fixed arbitration scheme. values: 0000b = master 0 retains highest priority 0001b = master 1 retains highest priority ? 1000b = pci 6540 retains highest priority 1001b ? 1111b = reserved yes yes 0000b 11:8 highest priority master in high-priority group. controls which master in the high-priority group remains the highest priority. valid only if the group uses the fixed arbitration scheme. values: 0000b = master 0 retains highest priority 0001b = master 1 retains highest priority ? 1000b = pci 6540 retains highest priority 1001b ? 1111b = reserved yes yes 0000b 15:12 bus grant parking control. controls bus grant behavior during idle. value: 0h = indicates the last master granted is parked all other values are reserved. yes no 0h
section 6 pci configuration register address mapping ? non-transparent mode registers pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 6-95 6 ? registers 6.2.3.7 test and serial eeprom registers register 6-161. (test; pci:52h) test bit description read write value after reset 0 serial eeprom autoload control. if set to 1, disables serial eeprom autoload. yes yes 0 1 fast serial eeprom autoload. if set to 1, speeds up serial eeprom autoload. yes yes 0 2 serial eeprom autoload status. serial eeprom autoload status is set to 1 during autoload. yes no status of serial eeprom autoload 3 s_pll_test. when p_clkoe input pin is set to 1 and this bit is set to 1, s_clko4 (derived from s_clkin) is divided by 4. yes yes 0 4 dev64#. reflects dev64# pin status. yes no dev64# 5 s_cfn#. reflects s_cfn# pin status. yes no s_cfn# 6 trans#. reflects trans# pin status. yes no trans# 7 u_mode. reflects u_mode pin status. yes no u_mode register 6-162. (eepcntrl; pci:54h) serial eeprom control bit description read write value after reset 0 start. starts serial eeprom read or write cycle. bit is cleared when serial eeprom load completes. yes yes 0 1 serial eeprom command. controls commands sent to the serial eeprom. values: 0 = read 1 = write yes yes 0 2 serial eeprom error. set to 1 if serial eeprom ack was not received during serial eeprom cycle. yes no ? 3 serial eeprom autoload successful. set to 1 if serial eeprom autoload occurred successfully after reset, with appropriate configuration registers loaded with the values programmed in the serial eeprom. if 0, the serial eeprom autoload was unsuccessful or disabled. yes no ? 5:4 reserved. yes no 00b 7:6 serial eeprom clock rate. controls the serial eeprom clock frequency. the serial eeprom clock is derived from the primary pci clock. values: 00b = pclk / 1024 01b = pclk / 512 10b = pclk / 128 11b = pclk / 16 (test mode) yes yes 01b
section 6 registers pci configuration register address mapping ? non-transparent mode pci 6540 data book, version 1.0 6-96 ? 2003 plx technology, inc. all rights reserved. register 6-163. (eepaddr; pci:55h) serial eeprom address bit description read write value after reset 0 reserved . yes no ? 7:1 serial eeprom address. serial eeprom cycle word address. yes yes ? register 6-164. (eepdata; pci:56h) serial eeprom data bit description read write value after reset 15:0 serial eeprom data. contains data to be written to the serial eeprom. during reads, contains data received from the serial eeprom after a read cycle completes. yes yes ?
section 6 pci configuration register address mapping ? non-transparent mode registers pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 6-97 6 ? registers 6.2.3.8 timer registers register 6-165. (tmrcntrl; pci:61h) timer control bit description read write value after reset 0 timer enable. set to start measurement of the approximate bus frequency on the primary or secondary interface. by default, bit is 0, and must be set to 1 to start the measurement. when set to 0 and then to 1, pci 6540 starts counting up until it reaches the set count period. during this counting period, pci 6540 timer counter (tmrcnt; pci:62h shadow register) counts the number of timer counter clocks. yes yes 0 2:1 timer counter clock source select: values: 00b = primary pci clock (p_clkin) 01b = secondary pci clock (s_clkin) 10b, 11b = reserved yes yes 00b 3 timer stop. timer stopped status bit. when the measurement is finished, this bit is set to 0, and then to 1. when starting a new measurement, this bit automatically restores to 0. values: 0 = timer running 1 = timer stopped yes no 0 5:4 count period. values: 00b = 16 reference clock high states 01b = 32 reference clock high states 10b = 64 reference clock high states 11b = 128 reference clock high states yes yes 00b 7:6 reserved. yes no 00b register 6-166. (tmrcnt; pci:62h) timer counter bit description read write value after reset 15:0 timer counter. automatically stops upon the count period setting in the timer control register (tmrcntrl[7:4]; pci:61h shadow register). this counter can be enabled by setting the timer enable bit (tmrcntrl[0]; pci:61h shadow register) first to 0, and then to 1. yes no 0h
section 6 registers pci configuration register address mapping ? non-transparent mode pci 6540 data book, version 1.0 6-98 ? 2003 plx technology, inc. all rights reserved. 6.2.4 pci configuration register address mapping 80h to ffh, shadow and extended registers ? non-transparent mode registers 80h to ffh, shadow and extended registers, are shared registers and can be accessed by primary and secondary ports. take care when accessing these registers by both primary and secondary port masters. when possible, use the built-in semaphore mechanism. registers listed with a pci offset or address are accessed by standard pci type 0 configuration accesses. 6.2.4.1 configuration registers 80htoffh registers 80h to ffh, and the extended registers, are set to their default values upon pci 6540 power-up. subsequent pci-x resets from p_rstin# and/or s_rstin# do not affect their values. table 6-7. pci configuration shadow register address mapping 80h ? ffh ? non-transparent mode pci configuration register address to ensure software compatibility with other versions of the pci 6540 family and to ensure compatibility with future enhancements, write 0 to all unused bits. pci writable serial eeprom writable primary offset secondary offset 31 24 23 16 15 8 70 80h 80h cross-bridge downstream configuration address yes no 84h 84h cross-bridge downstream configuration data yes no 88h 88h cross-bridge upstream configuration address yes no 8ch 8ch cross-bridge upstream configuration data yes no 90h 90h reserved cross-bridge configuration access ownership status cross-bridge upstream configuration ownership semaphore cross-bridge downstream configuration ownership semaphore yes no 94h 94h s_serr# event disable p_serr# event disable clock control yes no 98h 98h gpio[3:0] input data gpio[3:0] output enable gpio[3:0] output data p_serr# and s_serr# status yes no 9ch 9ch gpio[7:4] input data gpio[7:4] output enable gpio[7:4] output data hot swap switch and ror control yes no a0h a0h gpio[15:8] input data gpio[15:8] output enable gpio[15:8] output data power-up status yes no a4h a4h upstream message 3 upstream message 2 upstream message 1 upstream message 0 yes no a8h a8h downstream message 3 downstream message 2 downstream message 1 downstream message 0 yes no ach ach reserved message signaled interrupts control next capability pointer (0h) message signaled interrupts capability id (05h) * yes yes
section 6 pci configuration register address mapping ? non-transparent mode registers pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 6-99 6 ? registers notes: * writable only when the read-only registers write enable bit is set (hssrrc[7]=1; pci:9ch). refer to the individual register descriptions to determine which bits are writable. refer to the individual register descriptions to determine which bits are writable. b0h b0h message signaled interrupts address yes no b4h b4h message signaled interrupts upper address yes no b8h b8h reserved message signaled interrupts data yes no bch bch reserved no no c0h c0h downstream doorbell interrupt request downstream doorbell interrupt enable yes no c4h c4h upstream doorbell interrupt request upstream doorbell interrupt enable yes no c8h c8h upstream interrupt enable downstream interrupt status downstream doorbell interrupt status yes no cch cch downstream interrupt enable upstream interrupt status upstream doorbell interrupt status yes no d0h d0h extended register index non-transparent configuration ownership semaphore reserved yes no d4h d4h extended register data yes no d8h d8h arbiter control diagnostic control chip control yes no dch dch power management capabilities* power management next capability pointer (e4h) power management capability id (01h) yes yes e0h e0h power management data* pmcsr bridge supports extensions power management control/status* yes yes e4h e4h reserved hot swap control/ status (0h) hot swap next capability pointer (e8h) hot swap control (capability id) (06h) yes no e8h e8h vpd address (0h) vpd next capability pointer (f0h) vpd capability id (03h) yes no ech ech vpd data (0h) yes no f0h f0h pci-x command pci-x next capability pointer (0h) pci-x capability id (07h) yes no f4h f4h pci-x bridge status yes no f8h f8h pci-x upstream split transaction yes no fch fch pci-x downstream split transaction yes no table 6-7. pci configuration shadow register address mapping 80h ? ffh ? non-transparent mode pci configuration register address to ensure software compatibility with other versions of the pci 6540 family and to ensure compatibility with future enhancements, write 0 to all unused bits. pci writable serial eeprom writable primary offset secondary offset 31 24 23 16 15 8 70
section 6 registers pci configuration register address mapping ? non-transparent mode pci 6540 data book, version 1.0 6-100 ? 2003 plx technology, inc. all rights reserved. 6.2.4.2 cross-bridge configuration access control registers registers 80h to 87h and 90h cannot be written from the downstream side. registers 88h to 8fh and 91h cannot be written from the upstream side. configuration addresses should always be set up before accessing the configuration data. register 6-167. (xbdwnca; pci:80h) cross-bridge downstream configuration address bit description read write value after reset 31:0 downstream configuration address. data used as the downstream configuration address. yes yes 0h register 6-168. (xbdwncd; pci:84h) cross-bridge downstream configuration data bit description read write value after reset 31:0 downstream configuration data. data presented is used as the downstream configuration read/write data. yes yes 0h register 6-169. (xbupsca; pci:88h) cross-bridge upstream configuration address bit description read write value after reset 31:0 upstream configuration address. data used as the upstream configuration address. yes yes 0h register 6-170. (xbupscd; pci:8ch) cross-bridge upstream configuration data bit description read write value after reset 31:0 upstream configuration data. data presented is used as the upstream configuration read/write data. yes yes 0h
section 6 pci configuration register address mapping ? non-transparent mode registers pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 6-101 6 ? registers register 6-171. (xbdwncos; pci:90h) cross-bridge downstream configuration ownership semaphore bit description read write value after reset 0 downstream configuration ownership. only the upstream master can access this bit, using byte-wide accesses. when read as 0 by the upstream interface intending to access downstream configuration registers, indicates that downstream configuration address and data registers are not owned and can be accessed. the read operation automatically sets this bit to 1, indicating the bus is owned. the owner issues a configuration write 1 to clear this bit after use. if the bit is not cleared when another master wants to access the register, that master also checks this bit. the bit is sampled as 1, indicating the register is in use, and the master waits until the register is available for access. software can check this semaphore mechanism status by way of xbcos[0]; pci:92h, without taking ownership. yes yes/clr 0 7:1 reserved. yes no 0h register 6-172. (xbupscos; pci:91h) cross-bridge upstream configuration ownership semaphore bit description read write value after reset 0 upstream configuration ownership. only the downstream master can access this bit, using byte-wide accesses. when read as 0 by the downstream interface intending to access upstream configuration registers, indicates the upstream configuration address and data registers are not owned and can be accessed. the read operation automatically sets this bit to 1, indicating the bus is owned. the owner issues a configuration write 1 to clear this bit after use. if the bit is not cleared when another master wants to access the register, that master also checks this bit. the bit is sampled as 1, indicating the register is in use, and the master waits until the register is available for access. software can check this semaphore mechanism status by way of xbcos[1]; pci:92h, without taking ownership. yes yes/clr 0 7:1 reserved. yes no 0h register 6-173. (xbcos; pci:92h) cross-bridge configuration ownership status bit description read write value after reset 0 downstream configuration ownership status. allows software to check the downstream configuration ownership bit (xbdwncos[0]; pci:90h) without setting it. yes no 0 1 upstream configuration ownership status. allows software to check the upstream configuration ownership bit (xbupscos[0]; pci:91h) without setting it. yes no 0 7:2 reserved. yes no 0h
section 6 registers pci configuration register address mapping ? non-transparent mode pci 6540 data book, version 1.0 6-102 ? 2003 plx technology, inc. all rights reserved. 6.2.4.3 clock control register register 6-174. (clkcntrl; pci:94h) clock control bit description read write value after reset 1:0 clock 0 disable . if either bit is 0, s_clko0 is enabled. when both bits are 1, s_clko0 is disabled. defaults to 00b if msk_in=1. yes yes 00b 3:2 clock 1 disable. if either bit is 0, s_clko1 is enabled. when both bits are 1, s_clko1 is disabled. yes yes 00b 5:4 clock 2 disable. if either bit is 0, s_clko2 is enabled. when both bits are 1, s_clko2 is disabled. yes yes 00b 7:6 clock 3 disable. if either bit is 0, s_clko3 is enabled. when both bits are 1, s_clko3 is disabled. yes yes 00b 8 clock 4 disable. if 0, s_clko4 is enabled. when 1, s_clko4 is disabled. yes yes 0 15:9 reserved. yes no 0h
section 6 pci configuration register address mapping ? non-transparent mode registers pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 6-103 6 ? registers 6.2.4.4 system error event registers register 6-175. (pserred; pci:96h) p_serr# event disable bit description read write value after reset 0 address parity error. p_serr# is asserted because an address parity error occurred on either side of the bridge. yes yes/clr 0 1 posted write parity error. controls pci 6540 ability to assert p_serr# when a data parity error is detected on the target bus during a posted write transaction. p_serr# is asserted if this event occurs when bit is 0 and the command register p_serr# enable bit is set (pcicr[8]=1; primary pci:04h, secondary pci:44h). yes yes 0 2 posted memory write non-delivery. controls pci 6540 ability to assert p_serr# when it is unable to deliver posted write data after 2 24 attempts [or programmed maximum retry count (tocntrl[2:0]; pci:45h shadow register)]. p_serr# is asserted if this event occurs when bit is 0 and the command register p_serr# enable bit is set (pcicr[8]=1; primary pci:04h, secondary pci:44h). yes yes 0 3 target abort during posted write. controls pci 6540 ability to assert p_serr# when it receives a target abort while attempting to deliver posted write data. p_serr# is asserted if this event occurs when bit is 0 and the command register p_serr# enable bit is set (pcicr[8]=1; primary pci:04h, secondary pci:44h). yes yes 0 4 master abort on posted write. controls pci 6540 ability to assert p_serr# when it receives a master abort while attempting to deliver posted write data. p_serr# is asserted if this event occurs when bit is 0 and the command register p_serr# enable bit is set (pcicr[8]=1; primary pci:04h, secondary pci:44h). yes yes 0 5 delayed configuration or i/o write non-delivery. controls pci 6540 ability to assert p_serr# when it is unable to deliver delayed write data after 2 24 attempts [or programmed maximum retry count attempts (tocntrl[2:0]; pci:45h shadow register)]. p_serr# is asserted if this event occurs when bit is 0 and the command register p_serr# enable bit is set (pcicr[8]=1; primary pci:04h, secondary pci:44h). yes yes 0 6 delayed read-no data from target. controls pci 6540 ability to assert p_serr# when it is unable to transfer read data from the target after 2 24 attempts [or programmed maximum retry count attempts (tocntrl[2:0]; pci:45h shadow register)]. p_serr# is asserted if this event occurs when bit is 0 and command register p_serr# enable bit is set (pcicr[8]=1; primary pci:04h, secondary pci:44h). yes yes 0 7 posted write data parity error. p_serr# is asserted because a posted write data parity error occurred on the target bus. yes yes/clr 0
section 6 registers pci configuration register address mapping ? non-transparent mode pci 6540 data book, version 1.0 6-104 ? 2003 plx technology, inc. all rights reserved. register 6-176. (sserred; pci:97h) s_serr# event disable bit description read write value after reset 0 address parity error. s_serr# is asserted because an address parity error occurred on either side of the bridge. yes yes/clr 0 1 posted write parity error. controls pci 6540 ability to assert s_serr# when a data parity error is detected on the target bus during a posted write transaction. s_serr# is asserted if this event occurs when bit is 0 and the command register serr# enable bit is set (pciscr[8]=1; primary pci:44h, secondary pci:04h). yes yes 0 2 posted memory write non-delivery. controls pci 6540 ability to assert s_serr# when it is unable to deliver posted write data after 2 24 attempts [or programmed maximum retry count (tocntrl[2:0]; pci:45h shadow register)]. s_serr# is asserted if this event occurs when bit is 0 and the command register serr# enable bit is set (pciscr[8]=1; primary pci:44h, secondary pci:04h). yes yes 0 3 target abort during posted write. controls pci 6540 ability to assert s_serr# when it receives a target abort while attempting to deliver posted write data. s_serr# is asserted if this event occurs when bit is 0 and the command register p_serr# enable bit is set (pcicr[8]=1; primary pci:04h, secondary pci:44h). yes yes 0 4 master abort on posted write. controls pci 6540 ability to assert s_serr# when it receives a master abort while attempting to deliver posted write data. s_serr# is asserted if this event occurs when bit is 0 and command register p_serr# enable bit is set (pcicr[8]=1; primary pci:04h, secondary pci:44h). yes yes 0 5 delayed configuration or i/o write non-delivery. controls pci 6540 ability to assert s_serr# when it is unable to deliver delayed write data after 2 24 attempts [or programmed maximum retry count (tocntrl[2:0]; pci:45h shadow register)]. s_serr# is asserted if this event occurs when bit is 0 and the command register serr# enable bit is set (pcicr[8]=1; primary pci:04h, secondary pci:44h). yes yes 0 6 delayed read-no data from target. controls pci 6540 ability to assert s_serr# when it is unable to transfer read data from the target after 2 24 attempts [or programmed maximum retry count (tocntrl[2:0]; pci:45h shadow register)]. s_serr# is asserted if this event occurs when bit is 0 and the command register serr# enable bit is set (pcicr[8]=1; primary pci:04h, secondary pci:44h). yes yes 0 7 posted write data parity error. s_serr# is asserted because a posted write data parity error occurred on the target bus. yes yes/clr 0
section 6 pci configuration register address mapping ? non-transparent mode registers pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 6-105 6 ? registers register 6-177. (psserrsr; pci:98h) p_serr# and s_serr# status bit description read write value after reset 0 primary post write non-delivery. p_serr# is asserted because pci 6540 was unable to deliver posted write data to the target before the timeout counter expired. yes yes/clr 0 1 primary delayed write non-delivery. p_serr# is asserted because pci 6540 was unable to deliver delayed write data before the timeout counter expired. yes yes/clr 0 2 primary delayed read failed. p_serr# is asserted because pci 6540 was unable to read data from the target before the timeout counter expired. yes yes/clr 0 3 primary transaction master timeout. p_serr# is asserted because a master did not repeat a read or write transaction before the initiator bus master timeout counter expired. yes yes/clr 0 4 secondary post write non-delivery. s_serr# is asserted because pci 6540 was unable to deliver posted write data to the target before the timeout counter expired. yes yes/clr 0 5 secondary delayed write non-delivery. s _serr# is asserted because pci 6540 was unable to deliver delayed write data before the timeout counter expired. yes yes/clr 0 6 secondary delayed read failed. s _serr# is asserted because pci 6540 was unable to read data from the target before the timeout counter expired. yes yes/clr 0 7 secondary transaction master timeout. s _serr# is asserted because a master did not repeat a read or write transaction before the initiator bus master timeout counter expired. yes yes/clr 0
section 6 registers pci configuration register address mapping ? non-transparent mode pci 6540 data book, version 1.0 6-106 ? 2003 plx technology, inc. all rights reserved. 6.2.4.5 gpio[3:0] registers register 6-178. (gpiood[3:0]; pci:99h) gpio[3:0] output data bit description read write value after reset 3:0 gpio[3:0] output data write 1 to clear. writing 1 to any of these bits drives the corresponding signal low on the gpio[3:0] bus if the signal is programmed as an output. writing 0 has no effect. read returns the last written value. yes yes/clr 0h 7:4 gpio[3:0] output data write 1 to set. writing 1 to any of these bits drives the corresponding signal high on the gpio[3:0] bus if the signal is programmed as an output. writing 0 has no effect. read returns the last written value. yes yes/set high 0h register 6-179. (gpiooe[3:0]; pci:9ah) gpio[3:0] output enable bit description read write value after reset 3:0 gpio[3:0] output enable write 1 to clear. writing 1 to any of these bits configures the corresponding signal on the gpio[3:0] bus as an input. writing 0 has no effect. read returns the last written value. yes yes/clr 0h 7:4 gpio[3:0] output enable write 1 to set. writing 1 to any of these bits configures the corresponding signal on the gpio[3:0] bus as an output. writing 0 has no effect. read returns the last written value. yes yes/set high 0h register 6-180. (gpioid[3:0]; pci:9bh) gpio[3:0] input data bit description read write value after reset 3:0 reserved. yes no 0h 7:4 gpio[3:0] input data. reads gpio[3:0] pin state. the state is updated on the pci clock cycle following a change in the gpio[3:0] state. yes no ?
section 6 pci configuration register address mapping ? non-transparent mode registers pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 6-107 6 ? registers 6.2.4.6 hot swap and read-only control register register 6-181. (hssrrc; pci:9ch) hot swap switch and ror control bit description read write value after reset 0 hot swap extraction switch. used to signal board extraction. if set, the board is in the inserted state. writing 0 to this bit signals pending board extraction. yes yes ? 1 primary port 64-bit extension signals park. value: 1 = pci 6540 drives primary port pci 64-bit extension signals p_ad[63:32], p_cbe[7:4]#, and p_par64 to 0 yes yes 0 2 secondary port 64-bit extension signals park. value: 1 = pci 6540 drives secondary port pci 64-bit extension signals s_ad[63:32], s_cbe[7:4]#, and s_par64 to 0 yes yes 0 6:3 reserved. yes no 0h 7 read-only registers write enable. setting this bit to 1 enables writes to specific bits within these normally read-only registers (refer to the listed registers for further details):  vendor and device ids (pciidr; primary pci:00h, secondary pci:40h and primary pci:40h, secondary pci:00h)  pci class code (pciccr; primary pci:09h ? 0bh, secondary pci:49h ? 4bh and primary pci:49h ? 4bh, secondary pci:09h ? 0bh)  pci header type (pcihtr; primary pci:0eh, secondary pci:4eh and primary pci:4eh, secondary pci:0eh)  subsystem vendor id (pcisvid; primary pci:2ch, secondary pci:6ch and primary pci:6ch, secondary pci:2ch)  subsystem id (pcisid; primary pci:2eh, secondary pci:6eh and primary pci:6eh, secondary pci:2eh)  primary minimum grant (pcipmgr; pci:3eh, secondary pci:7eh)  primary maximum latency (pcipmlr; pci:3fh, secondary pci:7fh)  secondary minimum grant (pcismgr; pci:7eh, secondary pci:3eh)  secondary maximum latency (pcismlr; pci:7fh, secondary pci:3fh)  message signaled interrupts capability id (msicapid; pci:ach shadow register)  power management capabilities (pmc; pci:deh shadow register)  power management control/status (pmcsr; pci:e0h shadow register)  power management data (pmcdata; pci:e3h shadow register) bit must be cleared after the values are modified in these read-only registers. yes yes 0
section 6 registers pci configuration register address mapping ? non-transparent mode pci 6540 data book, version 1.0 6-108 ? 2003 plx technology, inc. all rights reserved. 6.2.4.7 gpio[7:4], power-up status, and gpio[15:8] registers register 6-182. (gpiood[7:4]; pci:9dh) gpio[7:4] output data bit description read write value after reset 3:0 gpio[7:4] output data write 1 to clear. writing 1 to any of these bits drives the corresponding signal low on the gpio[7:4] bus if the signal is programmed as an output. writing 0 has no effect. read returns the last written value. yes yes/clr 0h 7:4 gpio[7:4] output data write 1 to set. writing 1 to any of these bits drives the corresponding signal high on the gpio[7:4] bus if the signal is programmed as an output. writing 0 has no effect. read returns the last written value. yes yes/set high 0h register 6-183. (gpiooe[7:4]; pci:9eh) gpio[7:4] output enable bit description read write value after reset 3:0 gpio[7:4] output enable write 1 to clear. writing 1 to any of these bits configures the corresponding signal on the gpio[7:4] bus as an input. writing 0 has no effect. read returns the last written value. yes yes/clr 0h 7:4 gpio[7:4] output enable write 1 to set. writing 1 to any of these bits configures the corresponding signal on the gpio[7:4] bus as an output. writing 0 has no effect. read returns the last written value. yes yes/set high 0h register 6-184. (gpioid[7:4]; pci:9fh) gpio[7:4] input data bit description read write value after reset 3:0 reserved. yes no 0h 7:4 gpio[7:4] input data. reads the gpio[7:4] pins state. the state is updated on the pci clock cycle following a change in the gpio[7:4] state. yes no ?
section 6 pci configuration register address mapping ? non-transparent mode registers pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 6-109 6 ? registers register 6-185. (pwrupsr; pci:a0h) power-up status bit description read write value after reset 7:0 power-up latched status bits. upon pwrgd (power good), the status of gpio[15:8] are latched into pwrupsr. select pin status for desired option setting or checking. recommended use:  gpio15 ? primary power state. value of 1h indicates primary port power is stable.  gpio14 ? secondary power state. value of 1h indicates secondary port power is stable.  gpio13 ? 100 mhz pci-x. value of 1h indicates secondary pci-x bus is running at 100 mhz. yes no gpio[15:8] register 6-186. (gpiood[15:8]; pci:a1h) gpio[15:8] output data bit description read write value after reset 7:0 gpio[15:8] output data. values written to this register are output on the gpio[15:8] pins, if enabled. values: 0h = low 1h = high yes yes 0h register 6-187. (gpiooe[15:8]; pci:a2h) gpio[15:8] output enable bit description read write value after reset 7:0 gpio[15:8] output. writing 1 to any of these bits configures the corresponding signal on the gpio[15:8] bus as an output. writing 0 configures the corresponding signal as an input. yes yes 0h register 6-188. (gpioid[15:8]; pci:a3h) gpio[15:8] input data bit description read write value after reset 7:0 gpio[15:8] input data. reads the gpio[15:8] pins state. the state is updated on the pci clock cycle following a change in the gpio[15:8] state. yes no ?
section 6 registers pci configuration register address mapping ? non-transparent mode pci 6540 data book, version 1.0 6-110 ? 2003 plx technology, inc. all rights reserved. 6.2.4.8 direct message interrupt registers when enabled, a write command to the following message registers can cause a pci interrupt. the direct message interrupts encode the interrupt message in the response and are therefore faster than using the doorbell registers. s_inta# is activated by downstream messages, and p_inta# is activated by upstream messages. register 6-189. (upsmsg0; pci:a4h) upstream message 0 bit description read write value after reset 7:0 upstream message 0. secondary port masters can write data to upsmsg0 for primary port devices to read. yes yes 0h register 6-190. (upsmsg1; pci:a5h) upstream message 1 bit description read write value after reset 7:0 upstream message 1. secondary port masters can write data to upsmsg1 for primary port devices to read. yes yes 0h register 6-191. (upsmsg2; pci:a6h) upstream message 2 bit description read write value after reset 7:0 upstream message 2. secondary port masters can write data to upsmsg2 for primary port devices to read. yes yes 0h register 6-192. (upsmsg3; pci:a7h) upstream message 3 bit description read write value after reset 7:0 upstream message 3. secondary port masters can write data to upsmsg3 for primary port devices to read. yes yes 0h
section 6 pci configuration register address mapping ? non-transparent mode registers pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 6-111 6 ? registers register 6-193. (dwnmsg0; pci:a8h) downstream message 0 bit description read write value after reset 7:0 downstream message 0. primary port masters can write data to dwnmsg0 for secondary port devices to read. when this is written, downstream interrupt status bit is set (dwnintsr[0]=1; pci:cah) and s_inta# is asserted. the secondary device reads dwnintsr[0] and writes 1 to clear it and de-assert s_inta#. yes yes 0h register 6-194. (dwnmsg1; pci:a9h) downstream message 1 bit description read write value after reset 7:0 downstream message 1. primary port masters can write data to dwnmsg1 for secondary port devices to read. when this is written, downstream interrupt status bit is set (dwnintsr[1]=1; pci:cah) and s_inta# is asserted. the secondary device reads dwnintsr[1] and writes 1 to clear it and de-assert s_inta#. yes yes 0h register 6-195. (dwnmsg2; pci:aah) downstream message 2 bit description read write value after reset 7:0 downstream message 2. primary port masters can write data to dwnmsg2 for secondary port devices to read. when this is written, downstream interrupt status bit is set (dwnintsr[2]=1; pci:cah) and s_inta# is asserted. the secondary device reads dwnintsr[2] and writes 1 to clear it and de-assert s_inta#. yes yes 0h register 6-196. (dwnmsg3; pci:abh) downstream message 3 bit description read write value after reset 7:0 downstream message 3. primary port masters can write data to dwnmsg3 for secondary port devices to read. when this is written, downstream interrupt status bit is set (dwnintsr[3]=1; pci:cah) and s_inta# is asserted. the secondary device reads dwnintsr[3] and writes 1 to clear it and de-assert s_inta#. yes yes 0h
section 6 registers pci configuration register address mapping ? non-transparent mode pci 6540 data book, version 1.0 6-112 ? 2003 plx technology, inc. all rights reserved. 6.2.4.9 message signaled interrupt registers register 6-197. (msicapid; pci:ach) message signaled interrupts capability id bit description read write value after reset 7:0 message signaled interrupts (msi) capability id. pci-sig-issued capability id for message signaled interrupts is 05h. yes only if hssrrc[7]=1; serial eeprom 05h register 6-198. (msinext; pci:adh) message signaled interrupts next capability pointer bit description read write value after reset 7:0 message signaled interrupt next_cap pointer. offset into pci configuration space for location of the next capability in the new capabilities linked list. set to 0h, as this is the last item in the linked list. yes no 0h register 6-199. (msic; pci:aeh) message signaled interrupts control bit description read write value after reset 0 message signaled interrupts enable. set by system configuration software to enable msi. yes yes 0 3:1 multiple message capable. system configuration software reads these bits to determine the number of requested messages. yes no 000b 6:4 multiple message enable. system configuration software writes to these bits to indicate the number of allocated messages. yes yes 000b 7 64-bit address capable. system configuration software reads this bit to determine whether pci 6540 uses 64-bit addressing. values: 0 = 32 bit 1 = 64 bit yes no 0 15:8 reserved. yes no 0h
section 6 pci configuration register address mapping ? non-transparent mode registers pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 6-113 6 ? registers register 6-200. (msiaddr; pci:b0h) message signaled interrupts address bit description read write value after reset 1:0 reserved. yes no 00b 31:2 message signaled interrupt address. system-specified message address. yes yes 0h register 6-201. (msiuaddr; pci:b4h) message signaled interrupts upper address bit description read write value after reset 31:0 message signaled interrupt upper address. system- specified message upper address. yes yes 0h register 6-202. (msidata; pci:b8h) message signaled interrupts data bit description read write value after reset 15:0 message signaled interrupt data. system-specified message. each msi function is allocated up to 32 unique messages. yes yes 0h 31:16 reserved. yes no 0h
section 6 registers pci configuration register address mapping ? non-transparent mode pci 6540 data book, version 1.0 6-114 ? 2003 plx technology, inc. all rights reserved. 6.2.4.10 doorbell and miscellaneous interrupt registers s_inta# is asserted when there are active downstream interrupt sources. p_inta# is asserted when there are active upstream interrupt sources. register 6-203. (dwndbie; pci:c0h) downstream doorbell interrupt enable bit description read write value after reset 15:0 secondary interrupt requests enable. set to 1 to enable appropriate downstream doorbell interrupt request bit (dwndbir[15:0]; pci:c2h) to the secondary port. yes yes 0h register 6-204. (dwndbir; pci:c2h) downstream doorbell interrupt request bit description read write value after reset 15:0 downstream doorbell interrupt request. if a primary master sets any of these bits to 1, causes secondary port interrupts. when one of these bits is 1, the corresponding doorbell interrupt status bit (dwndbis[15:0]; pci:c8h) cannot be cleared and new interrupts are generated. therefore, immediately clear these bits after they are set to generate an interrupt. yes yes 0h register 6-205. (upsdbie; pci:c4h) upstream doorbell interrupt enable bit description read write value after reset 15:0 primary interrupt requests enable. set to 1 to enable appropriate software interrupt request bit (upsdbir[15:0]; pci:c6h) to the primary port. yes yes 0h register 6-206. (upsdbir; pci:c6h) upstream doorbell interrupt request bit description read write value after reset 15:0 upstream doorbell interrupt request. if a secondary master sets any of these bits to 1, causes primary port interrupts. when one of these bits is 1, the corresponding doorbell interrupt status bit (upsdbis[15:0]; pci:cch) cannot be cleared and new interrupts are generated. therefore, immediately clear these bits after they are set to generate an interrupt. yes yes 0h
section 6 pci configuration register address mapping ? non-transparent mode registers pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 6-115 6 ? registers register 6-207. (dwndbis; pci:c8h) downstream doorbell interrupt status bit description read write value after reset 15:0 secondary interrupt requests status. set bit indicates the corresponding secondary software interrupt request (dwndbir; pci:c2h) to the secondary host was detected. yes yes/clr 0h register 6-208. (dwnintsr; pci:cah) downstream interrupt status bit description read write value after reset 0 downstream message 0. primary-to-secondary message 0 is written. write 1 to de-assert s_inta#. yes yes/clr 0 1 downstream message 1. primary-to-secondary message 1 is written. write 1 to de-assert s_inta#. yes yes/clr 0 2 downstream message 2. primary-to-secondary message 2 is written. write 1 to de-assert s_inta#. yes yes/clr 0 3 downstream message 3. primary-to-secondary message 3 is written. write 1 to de-assert s_inta#. yes yes/clr 0 4 p_rstin# de-assertion. p_rstin# de-assertion detected. yes yes/clr 0 5 p_pme# de-assertion. p_pme# de-assertion detected. yes yes/clr 0 6 gpio15 active low interrupt. recommended use: primary power is not available. reflects gpio15 pin inverted state, if this interrupt is enabled; otherwise, value is 0. yes no 0 7 gpio5 active low interrupt. reflects gpio5 pin inverted state, if this interrupt is enabled; otherwise, value is 0. yes no 0 register 6-209. (upsinte; pci:cbh) upstream interrupt enable bit description read write value after reset 0 upstream message 0 interrupt enable. enables secondary- to-primary message 0 event interrupt trigger. yes yes 0 1 upstream message 1 interrupt enable. enables secondary- to-primary message 1 event interrupt trigger. yes yes 0 2 upstream message 2 interrupt enable. enables secondary- to-primary message 2 event interrupt trigger. yes yes 0 3 upstream message 3 interrupt enable. enables secondary- to-primary message 3 event interrupt trigger. yes yes 0 4 s_rstin# de-assertion enable. enables s_rstin# de-assertion detection. yes yes 0 5 s_pme# de-assertion enable. enables s_pme# de-assertion detection. yes yes 0 6 secondary external interrupt at gpio14 pin. enables interrupt trigger when gpio14 pin is low. yes yes 0 7 secondary external interrupt at gpio4 pin. enables interrupt trigger when gpio4 pin is low. yes yes 0
section 6 registers pci configuration register address mapping ? non-transparent mode pci 6540 data book, version 1.0 6-116 ? 2003 plx technology, inc. all rights reserved. register 6-210. (upsdbis; pci:cch) upstream doorbell interrupt status bit description read write value after reset 15:0 primary interrupt requests status. set bit indicates the corresponding primary software interrupt request upsdbir; pci:c6h) to the primary host was detected. yes yes/clr 0h register 6-211. (upsintsr; pci:ceh) upstream interrupt status bit description read write value after reset 0 upstream message 0. secondary-to-primary message 0 is written. write 1 to de-assert p_inta#. yes yes/clr 0 1 upstream message 1. secondary-to-primary message 1 is written. write 1 to de-assert p_inta#. yes yes/clr 0 2 upstream message 2. secondary-to-primary message 2 is written. write 1 to de-assert p_inta#. yes yes/clr 0 3 upstream message 3. secondary-to-primary message 3 is written. write 1 to de-assert p_inta#. yes yes/clr 0 4 s_rstin# de-assertion. s_rstin# de-assertion detected. yes yes/clr 0 5 s_pme# de-assertion. s_pme# de-assertion detected. yes yes/clr 0 6 gpio14 active low interrupt. recommended use: secondary power is not available. reflects gpio14 pin inverted state, if this interrupt is enabled; otherwise, value is 0. yes no 0 7 gpio4 active low interrupt. reflects gpio4 pin inverted state, if this interrupt is enabled; otherwise, value is 0. yes no 0 register 6-212. (dwninte; pci:cfh) downstream interrupt enable bit description read write value after reset 0 downstream message 0 interrupt enable. enables primary-to- secondary message 0 event interrupt trigger. yes yes 0 1 downstream message 1 interrupt enable. enables primary-to- secondary message 1 event interrupt trigger. yes yes 0 2 downstream message 2 interrupt enable. enables primary-to- secondary message 2 event interrupt trigger. yes yes 0 3 downstream message 3 interrupt enable. enables primary-to- secondary message 3 event interrupt trigger. yes yes 0 4 p_rstin# de-assertion enable. enables p_rstin# de-assertion detection. yes yes 0 5 p_pme# de-assertion enable. enables p_pme# de-assertion detection. yes yes 0 6 primary external interrupt at gpio15 pin. enables interrupt trigger when gpio15 pin is low. yes yes 0 7 primary external interrupt at gpio5 pin. enables interrupt trigger when gpio5 pin is low. yes yes 0
section 6 pci configuration register address mapping ? non-transparent mode registers pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 6-117 6 ? registers 6.2.4.11 non-transparent configuration ownership semaphore register register 6-213. (ntcos; pci:d2h) non-transparent configuration ownership semaphore bit description read write value after reset 0 non-transparent configuration ownership semaphore mechanism. when the primary or secondary port performs a configuration read to this bit, it returns 0 if there is no configuration read beforehand. such a read automatically sets this bit to 1. further reads by other primary or secondary masters observe a 1 (previously owned). bit must be cleared by the master that set the bit, using a configuration write 1 to ntcos. software can check this semaphore mechanism status by way of ccntrl[0]; pci:d8h without taking ownership. yes yes/clr 0 7:1 reserved. yes no 0h
section 6 registers pci configuration register address mapping ? non-transparent mode pci 6540 data book, version 1.0 6-118 ? 2003 plx technology, inc. all rights reserved. 6.2.4.12 sticky scratch and extended registers there are eight, 32-bit sticky scratch registers available in the pci 6540 (scratch x ; ext:00h to 07h). address translation registers are also located in the extended register area. the extended registers are accessed by way of the extended register index and extended register data registers (extridx; pci:d3h and extrdata; pci:d4h, respectively). the base address registers at index 08h to 0fh are discussed in section 6.2.4.13. note: when the serial eeprom is set to initialize for universal non-transparent mode applications, these registers also activate translation in universal transparent mode if prv_dev=1. (refer to section 7, ? serial eeprom. ? ) table 6-8. extended register map ? offset from extended register index, non-transparent mode extended register index writable serial eeprom writable 31 24 23 16 15 8 70 00h 32-bit sticky 0 yes no 01h 32-bit sticky 1 yes no 02h 32-bit sticky 2 yes no 03h 32-bit sticky 3 yes no 04h 32-bit sticky 4 yes no 05h 32-bit sticky 5 yes no 06h 32-bit sticky 6 yes no 07h 32-bit sticky 7 yes no
section 6 pci configuration register address mapping ? non-transparent mode registers pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 6-119 6 ? registers register 6-214. (scratch x ; ext:00h ? 07h) 32-bit sticky scratch bit description read write value after reset 31:0 sticky scratch. upon power good, the values of these registers are undefined. after power is good, p_rstin# and/ or s_rstin# assertion does not affect their current value. yes yes ? register 6-215. (extridx; pci:d3h) extended register index bit description read write value after reset 7:0 extended index address. extended registers index address. yes yes ? register 6-216. (extrdata; pci:d4h) extended register data bit description read write value after reset 31:0 extended register data. configuration write causes the data presented at this port to be written into the register addressed by the extended register index (extridx; pci:d3h). configuration read causes the data from the register addressed by the extended register index (extridx; pci:d3h) to be placed into and read from extrdata. yes yes ?
section 6 registers pci configuration register address mapping ? non-transparent mode pci 6540 data book, version 1.0 6-120 ? 2003 plx technology, inc. all rights reserved. 6.2.4.13 address translation control registers when using the pci 6540 in standard non-transparent mode, the address translation control registers should remain in the default state. these registers are used only when address translation is required in non-transparent mode. (refer to section 10.7.3, ? non-transparent mode address translation, ? for further details.) the address translation enable control bits enable or disable only the address translation functions. these bits do not control whether the memory window is open. take care to ensure that there is a valid memory window in the memory map of the host on that port. these registers are accessible only by reading/writing through the extended register index and data registers (extridx; pci:d3h and extrdata; pci:d4h, respectively). note: when the serial eeprom is set to initialize for universal non-transparent mode applications, these registers also activate translation in universal transparent mode if prv_dev=1. (refer to section 10.7.2, ? transparent mode address translation, ? on page 10-6 and section 10.7.3, ? non-transparent mode address translation, ? on page 10-11 for further details.) table 6-9. extended register map (used in non-transparent address translation) ? offset from extended register index extended register index writable serial eeprom writable 31 24 23 16 15 8 70 08h upstream bar 0 translation address yes yes 09h upstream bar 1 translation address yes yes 0ah upstream bar 2 or upstream bar 1 upper 32 bits translation address yes yes 0bh upstream translation enable upstream bar 2 translation mask upstream bar 1 translation mask upstream bar 0 translation mask yes yes 0ch downstream bar 0 translation address yes yes 0dh downstream bar 1 translation address yes yes 0eh downstream bar 2 or downstream bar 1 upper 32 bits translation address yes yes 0fh downstream translation enable downstream bar 2 translation mask downstream bar 1 translation mask downstream bar 0 translation mask yes yes
section 6 pci configuration register address mapping ? non-transparent mode registers pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 6-121 6 ? registers register 6-217. (upstnbar0; ext:08h) upstream bar 0 translation address bit description read write value after reset 31:0 upstream bar 0 translation address. bits [11:0] are read-only, and always 0. only address bits [31:12] are translated. lower address bits are passed. note: translation address must align with the window size boundary. yes yes [31:12]; serial eeprom 0h register 6-218. (upstnbar1; ext:09h) upstream bar 1 translation address bit description read write value after reset 31:0 upstream bar 1 translation address. bits [19:0] are read-only, and always 0. only address bits [31:20] are translated. lower address bits are passed. note: translation address must align with the window size boundary. yes yes [31:20]; serial eeprom 0h register 6-219. (upstnbar2; ext:0ah) upstream bar 2 translation address or upstream bar 1 upper 32 bits bit description read write value after reset 31:0 upstream bar 2 translation address or upstream bar 1 upper 32 bits. bits [11:0] are read-only, and always 0. only address bits [31:12] are translated. lower address bits are passed. if pciubar1 is configured as a 64-bit bar (upsbar1msk[14]=1; ext:0bh), then upstnbar2 contains the upper 32 bits of the bar 1 translation address. note: translation address must align with the window size boundary. yes yes [31:12]; serial eeprom 0h
section 6 registers pci configuration register address mapping ? non-transparent mode pci 6540 data book, version 1.0 6-122 ? 2003 plx technology, inc. all rights reserved. register 6-220. (upsbar0msk; ext:0bh) upstream bar 0 translation mask bit description read write value after reset 4:0 address mask msb position. number of local address bits for bar 0 mask. yes yes; serial eeprom 1fh 5 reserved. yes no 0 6 bar type. values: 0 = bar 0 points to i/o space 1 = bar 0 points to memory space yes yes; serial eeprom 0 7 prefetchable. values: 0 = region pointed to by bar 0 is not prefetchable 1 = region pointed to by bar 0 is in a prefetchable memory region yes yes; serial eeprom 0 register 6-221. (upsbar1msk; ext:0bh) upstream bar 1 translation mask bit description read write value after reset 13:8 address mask msb position. number of local address bits for bar 1 mask. yes yes; serial eeprom 3fh 14 bar type. values: 0 = bar 1 is a 32-bit bar 1 = bar 1 is a 64-bit bar yes yes; serial eeprom 0 15 prefetchable. values: 0 = region pointed to by bar 1 is not prefetchable 1 = region pointed to by bar 1 is in a prefetchable memory region yes yes; serial eeprom 0 register 6-222. (upsbar2msk; ext:0bh) upstream bar 2 translation mask bit description read write value after reset 20:16 address mask msb position. number of local address bits for bar 2 mask. yes yes; serial eeprom 1fh 22:21 reserved. yes no 00b 23 prefetchable. values: 0 = region pointed to by bar 2 is not prefetchable 1 = region pointed to by bar 2 is in a prefetchable memory region yes yes; serial eeprom 0
section 6 pci configuration register address mapping ? non-transparent mode registers pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 6-123 6 ? registers register 6-223. (upstne; ext:0bh) upstream translation enable bit description read write value after reset 24 upstream bar 0 enable. if set to 1, address translation using bar 0 is enabled. yes yes; serial eeprom 0 25 upstream bar 1 enable. if set to 1, address translation using bar 1 is enabled. yes yes; serial eeprom 0 26 upstream bar 2 enable. if set to 1, address translation using bar 2 is enabled. yes yes; serial eeprom 0 30:27 reserved. yes no 0h 31 s_port_ready. upon s_rstin# assertion, bit is cleared. set by the secondary port master upon completion of secondary port initialization. when p_boot=0 (secondary port retains boot priority), the primary port master access to pci standard bar configurations at offsets 10h to 1bh is retried until the s_port_ready bit is set. when p_boot=0 and bit is 0, cross-bridge traffic initiated by primary port is returned with retry. s_port_ready mechanism does not have the above effect if the special fixed-size cross-bridge communication window is enabled by setting the xb_mem input to 1. yes yes; serial eeprom ?
section 6 registers pci configuration register address mapping ? non-transparent mode pci 6540 data book, version 1.0 6-124 ? 2003 plx technology, inc. all rights reserved. register 6-224. (dwntnbar0; ext:0ch) downstream bar 0 translation address bit description read write value after reset 31:0 downstream bar 0 translation address. bits [11:0] are read-only, and always 0. only address bits [31:12] are translated. lower address bits are passed. note: translation address must align with the window size boundary. yes yes [31:12]; serial eeprom 0h register 6-225. (dwntnbar1; ext:0dh) downstream bar 1 translation address bit description read write value after reset 31:0 downstream bar 1 translation address. bits [19:0] are read-only, and always 0. only address bits [31:20] are translated. lower address bits are passed. note: translation address must align with the window size boundary. yes yes [31:20]; serial eeprom 0h register 6-226. (dwntnbar2; ext:0eh) downstream bar 2 or downstream memory bar 1 upper 32 bits translation address bit description read write value after reset 31:0 downstream bar 2 or downstream memory bar 1 upper 32 bits translation address. bits [11:0] are read-only and always 0. only address bits [31:12] are translated. lower address bits are passed. if pcibar1 is configured as a 64-bit bar (dwnbar1msk[14]=1; ext:0fh), then dwntnbar2 contains the upper 32 bits of the bar 1 translation address. note: translation address must align with the window size boundary. yes yes [31:12]; serial eeprom 0h
section 6 pci configuration register address mapping ? non-transparent mode registers pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 6-125 6 ? registers register 6-227. (dwnbar0msk; ext:0fh) downstream bar 0 translation mask bit description read write value after reset 4:0 address mask msb position. number of local address bits for bar 0 mask. yes yes; serial eeprom 1fh 5 reserved. yes no 0 6 bar type. values: 0 = bar 0 points to memory space 1 = bar 0 points to i/o space yes yes; serial eeprom 0 7 prefetchable. values: 0 = region pointed to by bar 0 is not prefetchable 1 = region pointed to by bar 0 is in a prefetchable memory region yes yes; serial eeprom 0 register 6-228. (dwnbar1msk; ext:0fh) downstream bar 1 translation mask bit description read write value after reset 13:8 address map msb position. number of local address bits for bar 1 mask. yes yes; serial eeprom 3fh 14 bar type. values: 0 = bar 1 is a 32-bit bar 1 = bar 1 is a 64-bit bar yes yes; serial eeprom 0 15 prefetchable. values: 0 = region pointed to by bar 1 is not prefetchable 1 = region pointed to by bar 1 is in a prefetchable memory region yes yes; serial eeprom 0 register 6-229. (dwnbar2msk; ext:0fh) downstream bar 2 translation mask bit description read write value after reset 20:16 address mask msb position. number of local address bits for bar 2 mask. yes yes; serial eeprom 1fh 22:21 reserved. yes no 00b 23 prefetchable. values: 0 = region pointed to by bar 2 is not prefetchable 1 = region pointed to by bar 2 is in a prefetchable memory region yes yes; serial eeprom 0
section 6 registers pci configuration register address mapping ? non-transparent mode pci 6540 data book, version 1.0 6-126 ? 2003 plx technology, inc. all rights reserved. register 6-230. (dwntne; ext:0fh) downstream translation enable bit description read write value after reset 24 downstream bar 0 enable. if set to 1, address translation using bar 0 is enabled. yes yes; serial eeprom 0 25 downstream bar 1 enable. if set to 1, address translation using bar 1 is enabled. yes yes; serial eeprom 0 26 downstream bar 2 enable. if set to 1, address translation using bar 2 is enabled. yes yes; serial eeprom 0 30:27 reserved. yes no 0h 31 p_port_ready. upon p_rstin# assertion, bit is cleared. set by the primary port master upon completion of primary port initialization. when p_boot=1 (primary port retains boot priority), the secondary port master access to pci standard bar configurations at 10h to 1bh is retried until the p_port_ready bit is set. when p_boot=0 and bit is 0, cross-bridge traffic initiated by secondary port is returned with retry. p_port_ready mechanism does not have the above effect if the special fixed-size cross-bridge communication window is enabled by setting the xb_mem input to 1. yes yes; serial eeprom ?
section 6 pci configuration register address mapping ? non-transparent mode registers pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 6-127 6 ? registers 6.2.4.14 chip, diagnostic, and arbiter control registers register 6-231. (ccntrl; pci:d8h) chip control bit description read write value after reset 0 non-transparent configuration semaphore mechanism status. software can check the non-transparent configuration semaphore mechanism status by way of this bit without taking ownership. yes no 0 1 memory write disconnect control. controls when pci 6540, as a target, disconnects memory transactions. values: 0 = disconnects on queue full or on a 4-kb boundary 1 = disconnects on a cache line boundary, when the queue fills or on a 4-kb boundary yes yes 0 2 cross-bridge memory window enable (non-transparent mode). when bit is 1, pci 6540 automatically claims 16 mb of memory space. this allows boot-up of the low-priority boot port to proceed without waiting for the priority boot port to program the corresponding memory bars. if bit is 1, the p_port_ready or s_port_ready mechanism is not relevant and access to bars is not retried. note: although the default claims 16 mb, the bars can be changed by serial eeprom or software to change the window size. yes yes xb_mem 3 reserved. yes no 0 4 secondary bus prefetch disable. controls pci 6540 ability to prefetch during downstream memory read transactions. values: 0 = prefetches and does not forward byte enables during memory read transactions. 1 = requests only 1 dword from the target during memory read transactions and forwards byte enables. pci 6540 returns a target disconnect to the requesting master on the first data transfer. memory read line and memory read multiple transactions remain prefetchable. yes yes 0 5 reserved. yes no 0 6 transparent access. enables access to shadow registers (which are also transparent mode registers) 44h to 5fh when operating in non-transparent mode. yes yes 0 7 reserved. yes no 0
section 6 registers pci configuration register address mapping ? non-transparent mode pci 6540 data book, version 1.0 6-128 ? 2003 plx technology, inc. all rights reserved. register 6-232. (dcntrl; pci:d9h) diagnostic control bit description read write value after reset 0 chip reset. chip and secondary bus reset. setting bit activates full chip reset, asserts s_rstout#, and forces the bridge control register secondary reset bit to be set (bcntrl[6]=1; pci:42h shadow register). after resetting the pci 6540 registers, this bit is cleared; however, bcntrl[6] remains set to 1. writing 0 has no effect. yes yes 0 2:1 test mode. yes yes 00b 3 secondary reset output mask. values: 0 = p_rstin# assertion causes s_rstout# assertion. 1 = p_rstin# assertion does not cause s_rstout# assertion. p_rstin# assertion does not reset the primary port control logic state machines. power not good (pwrgd=0) clears bit to 0. yes yes 0 4 primary reset output mask. values: 0 = s_rstin# assertion causes p_rstout# assertion 1 = s_rstin# assertion does not cause p_rstout# assertion power not good (pwrgd=0) clears bit to 0. yes yes ? 5 primary reset. forces p_rstout# assertion on primary interface. values: 0 = does not force p_rstout# assertion 1 = forces assertion of 0 at p_rstout# pin note: the secondary reset bit is in bridge control register (bcntrl[6]; pci:42h shadow register). yes yes 0 7:6 reserved. yes no 00b register 6-233. (acntrl; pci:dah) arbiter control bit description read write value after reset 7:0 arbiter control. each bit controls whether a secondary bus master is assigned to the high- or low-priority group. bits correspond to request inputs s_req[7:0]#, respectively. value of 1h assigns the bus master to the high-priority group. yes yes 0h 8 reserved. yes yes 0 9 pci 6540 priority. defines whether pci 6540 secondary port is in the high- or low-priority group. values: 0 = low-priority group 1 = high-priority group yes yes 1 15:10 reserved. yes no 0h
section 6 pci configuration register address mapping ? non-transparent mode registers pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 6-129 6 ? registers 6.2.4.15 power management capability registers register 6-234. (pmcapid; pci:dch) power management capability id bit description read write value after reset 7:0 power management capability id. pci-sig-issued capability id for power management is 01h. yes no 01h register 6-235. (pmnext; pci:ddh) power management next capability pointer bit description read write value after reset 7:0 next_cap pointer. provides an offset into pci configuration space for the hot swap capability location in the new capabilities linked list. yes no e4h
section 6 registers pci configuration register address mapping ? non-transparent mode pci 6540 data book, version 1.0 6-130 ? 2003 plx technology, inc. all rights reserved. register 6-236. (pmc; pci:deh) power management capabilities bit description read write value after reset 2:0 version. set to 001b, indicating that this function complies with pci power mgmt. r1.1 . yes only if hssrrc[7]=1; serial eeprom 001b 3 pme clock. because pci 6540 does not require the pci clock for pme#, set this bit to 0. yes only if hssrrc[7]=1; serial eeprom 0 4 auxiliary power source. because pci 6540 does not support pme# while in a d 3cold state, this bit is always set to 0. yes only if hssrrc[7]=1; serial eeprom 0 5 device-specific initialization (dsi). returns 0, indicating pci 6540 does not require special initialization. yes only if hssrrc[7]=1; serial eeprom 0 8:6 reserved. yes no 000b 9 d 1 support. returns 1, indicating that pci 6540 supports the d 1 device power state yes only if hssrrc[7]=1; serial eeprom 1 10 d 2 support. returns 1, indicating that pci 6540 supports the d 2 device power state yes only if hssrrc[7]=1; serial eeprom 1 15:11 pme support. values: xxxx1b = pme# asserted from d 0 xxx1xb = pme# asserted from d 1 xx1xxb = pme# asserted from d 2 x1xxxb = pme# asserted from d 3hot 1xxxxb = pme# asserted from d 3cold yes only if hssrrc[7]=1; serial eeprom 01111b
section 6 pci configuration register address mapping ? non-transparent mode registers pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 6-131 6 ? registers register 6-237. (pmcsr; pci:e0h) power management control/status bit description read write value after reset 1:0 power state. used to determine the current power state of a function and to set the function into a new power state. values: 00b = d 0 01b = d 1 10b = d 2 11b = d 3hot yes yes; serial eeprom 00b 7:2 reserved. yes no 0h 8 pme enable. enables the pme# output pin. values: 0 = pme# output disabled 1 = pme# output enabled note: in transparent mode, p_pme# and s_pme# should be pulled high and not used. pme# output is always p_pme#. in non-transparent mode, the pme# output is either p_pme# or s_pme#, depending on the p_boot value. yes yes; serial eeprom 0 12:9 data select. returns 0h, indicating pci 6540 does not return dynamic data. yes only if hssrrc[7]=1; serial eeprom 0h 14:13 data scale. returns 00b when read. pci 6540 does not return dynamic data. yes no 00b 15 pme status. set to 0, because pci 6540 does not support pme# signaling. yes yes; serial eeprom 0 register 6-238. (pmcsr_bse; pci:e2h) pmcsr bridge supports extensions bit description read write value after reset 5:0 reserved. yes no 0h 6 b 2 /b 3 support for d 3hot . reflects the bpcc_en input pin state. value of 1 indicates that when the pci 6540 is programmed to d 3hot state, the secondary bus clock is stopped. yes no ? 7 bus power control enable. reflects the bpcc_en input pin state. value of 1 indicates that the secondary bus power management state follows that of the pci 6540, with one exception ? d 3hot . yes no ? register 6-239. (pmcdata; pci:e3h) power management data bit description read write value after reset 7:0 power management data. serial eeprom or ror write controlled loadable, but read-only during normal operation. yes only if hssrrc[7]=1; serial eeprom 0h
section 6 registers pci configuration register address mapping ? non-transparent mode pci 6540 data book, version 1.0 6-132 ? 2003 plx technology, inc. all rights reserved. 6.2.4.16 hot swap capability registers register 6-240. (hs_cntl; pci:e4h) hot swap control bit description read write value after reset 7:0 hot swap capability id. pci-sig-issued capability id for hot swap is 06h. yes no 06h register 6-241. (hs_next; pci:e5h) hot swap next capability pointer bit description read write value after reset 7:0 next_cap pointer. provides an offset into pci configuration space for the vpd capability location in the new capabilities linked list. yes no e8h register 6-242. (hs_csr; pci:e6h) hot swap control/status bit description read write value after reset 0 device hiding arm (dha). dha is set to 1 by hardware when the hot swap port pci rstin# becomes inactive and the handle switch remains unlocked. handle locking clears this bit. values: 0 = disarm device hiding 1 = arm device hiding yes yes 0 1 enum# mask status (eim). enables or disables enum# assertion. values: 0 = enables enum# assertion 1 = masks enum# assertion yes yes 0 2 pending insert or extract (pie). set when ins or ext is 1 or ins is armed (write 1 to ext bit). values: 0 = neither is pending 1 = insertion or extraction is in progress yes no ? 3 led status (loo). indicates whether led is on or off. values: 0 = led is off 1 = led is on yes yes 0 5:4 programming interface (pi). hardcoded at 01b ? ins, est, loo, eim, pie, and device hiding supported. yes no 01b 6 extraction state (ext). set by hardware, when the ejector handle is unlocked and ins=0. yes yes/clr ? 7 insertion state (ins). set by hardware when the hot swap port rstin# is de-asserted, serial eeprom autoload is completed, and ejector handle is locked. writing 1 to ext bit also arms ins. yes yes/clr ? 15:8 reserved. yes no 0h
section 6 pci configuration register address mapping ? non-transparent mode registers pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 6-133 6 ? registers 6.2.4.17 vpd capability registers register 6-243. (pvpdid; pci:e8h) vital product data capability id bit description read write value after reset 7:0 vital product data capability id. pci-sig-issued capability id for vpd is 03h. yes no 03h register 6-244. (pvpd_next; pci:e9h) vital product data next capability pointer bit description read write value after reset 7:0 next_cap pointer. provides an offset into pci configuration space for the pci-x capability location in the new capabilities linked list. yes no f0h register 6-245. (pvpdad; pci:eah) vital product data address bit description read write value after reset 1:0 reserved. yes no 00b 7:2 vpd address. offset into the serial eeprom to location where data is written and read. pci 6540 accesses the serial eeprom at address pvpdad[7:2]+40h. the 40h offset ensures that vpd accesses do not overwrite the pci 6540 serial eeprom configuration data stored in serial eeprom locations 00h to 3fh. yes yes 0h 14:8 reserved. yes no 0h 15 vpd operation . writing 0 to this bit generates a read cycle from the serial eeprom at the vpd address specified in pvpdad[7:2]. bit remains at logic 0 until the serial eeprom cycle is finished, then set to 1. data for reads is available in the vpd data register (pvpdata; pci:ech). writing 1 to this bit generates a write cycle to the serial eeprom at the vpd address specified in pvpdad[7:2]. this bit remains at logic 1, until the serial eeprom cycle is finished, then cleared to 0. place write data into the vpd data register. yes yes 0 register 6-246. (pvpdata; pci:ech) vpd data bit description read write value after reset 31:0 vpd data (serial eeprom data). the least significant byte of this register corresponds to the byte of vpd at the address specified by the vpd address register (pvpdad[7:2]; pci:eah). data is read from or written to pvpdata, using standard configuration accesses. yes yes 0h
section 6 registers pci configuration register address mapping ? non-transparent mode pci 6540 data book, version 1.0 6-134 ? 2003 plx technology, inc. all rights reserved. 6.2.4.18 pci-x capability registers register 6-247. (pcixcapid; pci:f0h) pci-x capability id bit description read write value after reset 7:0 pci-x capability id. pci-sig-issued capability id for pci-x is 07h. yes no 07h register 6-248. (pcix_next; pci:f1h) pci-x next capability pointer bit description read write value after reset 7:0 next_cap pointer. provides an offset into pci configuration space for the location of the next capability in the new capabilities linked list. set to ach in non-transparent mode to point to the message signaled interrupt capabilities. yes no ach register 6-249. (pcix_cmd; pci:f2h) pci-x command bit description read write value after reset 0 date parity error recovery enable. values: 0 = asserts p_serr#, if pci 6540 p_serr# detection is enabled, when the master data parity error bit is set (pcisr[8]=1; primary pci:06h, secondary pci:46h) 1 = disables data parity error recovery yes yes 0 1 enable relaxed ordering. relaxed ordering attribute cannot be set. yes no 0 3:2 maximum memory read byte count. standard pci-x control bits. as an application bridge, pci 6540 does not use the values set here: 00b = 512 bytes 01b = 1 kb 10b = 2 kb 11b = 4 kb yes yes 00b 6:4 maximum outstanding split transactions. standard pci-x control bits. as an application bridge, pci 6540 does not use the values set here: 000b = 1 001b = 2 010b = 3 011b = 4 100b = 8 101b = 12 110b = 16 111b = 32 yes yes 011b 15:7 reserved. yes no 0h
section 6 pci configuration register address mapping ? non-transparent mode registers pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 6-135 6 ? registers register 6-250. (pcixbsr; pci:f4h) pci-x bridge status bit description read write value after reset 2:0 function number. indicates function number (the number in ad[10:8] of the address of a type 0 configuration transaction to which this bridge responds). the function uses this number as part of its requester and completer ids (set to 000b). pci 6540 uses the bus, device, and function numbers bits to create the completer id when responding with a split completion to a read of an internal bridge register. yes no 000b 7:3 device number. indicates device number (the number in ad[15:11] of the address of a type 0 configuration transaction) assigned to pci 6540. yes no 11111b 15:8 bus number. additional addresses from which the primary bus number register contents (pcipbno; pci:18h; in the type 01h configuration space header) are read. yes no ? 16 64-bit device. indicates the bridge ad bus data width. this bit is the inverse of the dev64# input. values: 0 = 32-bit bus data width 1 = 64-bit bus data width yes no inverse of dev64# input 17 133 mhz capability. indicates the bridge primary interface is capable of 133 mhz operations in pci-x mode. values: 0 = device maximum frequency is 66 mhz 1 = device maximum frequency is 133 mhz yes no 1 18 split completion discarded. set if pci 6540 discards a split completion, because the requester on the primary bus would not accept it. values: 0 = split completion not discarded 1 = split completion discarded yes yes/clr 0 19 unexpected split completion. set if an unexpected split completion with a requester id equal to pci 6540 primary bus, device, and function numbers is received on the bridge primary bus. values: 0 = no unexpected split completion received 1 = unexpected split completion received yes yes/clr 0 20 device complexity. pci 6540 is an application bridge. yes no 1 22:21 designed maximum memory read byte count. 1024 bytes. yes no 01b 25:23 designed maximum outstanding split transactions. four outstanding. yes no 011b 28:26 designed maximum cumulative read size. eight adqs and 1 kb. yes no 000b 29 received split completion error message. set if pci 6540 receives a split completion message with the split completion error attribute bit set (ad30=0). yes yes/clr 0 31:30 reserved. yes no 00b
section 6 registers pci configuration register address mapping ? non-transparent mode pci 6540 data book, version 1.0 6-136 ? 2003 plx technology, inc. all rights reserved. note: pcixupstr controls bridge buffer behavior for forwarding split transactions from a secondary requester to a primary bus complet er. note: pcixdnstr controls the bridge buffer behavior for forwarding split transactions from a primary bus requester to a secondary bus completer. register 6-251. (pcixupstr; pci:f8h) pci-x upstream split transaction bit description read write value after reset 15:0 split transaction capacity. pci 6540 stores split completions for memory reads in the same buffer as split completions for i/o and configuration reads and writes. indicates the buffer size, in adq numbers, for storing split completions for memory reads for requesters on the secondary bus addressing completers on the primary bus. yes no 32d 31:16 split transaction commitment limit or outstanding adq limit. indicates the cumulative sequence size for pci-x memory read transactions forwarded by the pci 6540 from requesters on the secondary bus addressing completers on the primary bus. also indicates upstream split transaction size of those types the pci 6540 is allowed to commit to at one time. yes yes 32d register 6-252. (pcixdnstr; pci:fch) pci-x downstream split transaction bit description read write value after reset 15:0 split transaction capacity. pci 6540 stores split completions for memory reads in the same buffer as split completions for i/o and configuration reads and writes. indicates the buffer size, in adq numbers, for storing split completions for memory reads for requesters on the primary bus addressing completers on the secondary bus. yes no 32d 31:16 split transaction commitment limit or outstanding adq limit. indicates the cumulative sequence size for pci-x memory read transactions forwarded by pci 6540 from requesters on the secondary bus addressing completers on the primary bus. also indicates downstream split transaction size of those types the pci 6540 is allowed to commit to at one time. yes yes 32d
pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 7-1 7 ? serial eeprom 7 serial eeprom this section describes information specific to the pci 6540 serial eeprom interface and use ? access, autoload mode, universal non-transparent mode groups, and data structure. 7.1 overview important note: erroneous serial eeprom data can cause the pci 6540 to lock the system. provide an optional switch or jumper to disable the serial eeprom in board designs. the pci 6540 provides a two-wire interface to a serial eeprom device. the interface can control an issi is24c02 or compatible part, which is organized as 256 x 8 bits. the serial eeprom is used to initialize the internal pci 6540 registers, and alleviates the need for user software to configure the pci 6540. if a programmed serial eeprom is connected, the pci 6540 automatically loads data from the serial eeprom after p_rstin# de-assertion. the data structure is defined in section 7.5.1. the serial eeprom interface is organized on a 16-bit base in little endian format, and the pci 6540 supplies a 7-bit serial eeprom word address. the following pins are used for the serial eeprom interface:  eepclk ? serial eeprom clock output  eepdata ? serial eeprom bi-directional serial data pin note: the pci 6540 does not control the serial eeprom a0h to a2h address inputs. set the serial eeprom address inputs to 0. 7.2 serial eeprom access the pci 6540 can access the serial eeprom on a word basis, using the hardware sequencer. users access one word data by way of the pci 6540 serial eeprom control register:  serial eeprom address (eepaddr; pci:55h)  serial eeprom start/read/write control (eepcntrl; pci:54h)  serial eeprom data (eepdata; pci:56h) note: in non-transparent mode, serial eeprom access is not supported from the secondary bus. before each access, software should check the auto mode cycle in progress status (eepcntrl[0]; pci:54h, same bit as start) before issuing the next start. the following is the general procedure for read/ write serial eeprom accesses: 1. program the serial eeprom address register (eepaddr; pci:55h) with the word address. 2. for writes ? program word data to the serial eeprom data register (eepdata; pci:56h). for reads ? proceed to the next step. 3. for writes ? set the serial eeprom command and start bits (eepcntrl[1:0]=11b; pci:54h) to start the serial eeprom sequencer. for reads ? set the start bit (eepcntrl[1:0]=01b; pci:54h) to start the serial eeprom sequencer. 4. when the serial eeprom read/write is complete, serial eeprom control register (eepcntrl[0]=0; pci:54h). for writes ? serial eeprom control register bit [0]=0 indicates that the data was successfully written to the serial eeprom. for reads ? serial eeprom control register bit [0]=0 indicates that the data was loaded into serial eeprom data register (eepdata; pci:56h) by the serial eeprom sequencer. 7.3 serial eeprom autoload mode upon pwrgd or p_rstin# going high, whichever occurs last, the pci 6540 autoloads the serial eeprom data into the internal pci 6540 registers. the pci 6540 initially reads the first offset in the serial eeprom, which should contain a valid signature 1516h. if the signature is correct, register autoload commences. during autoload, the pci 6540 reads sequential words from the serial eeprom and writes to the appropriate registers. if a blank serial eeprom is connected, the pci 6540 stops loading the serial eeprom contents after reading the first word, as the serial eeprom ? s signature is not valid. likewise, if no serial eeprom is connected, the pci 6540 also stops loading the serial eeprom contents after attempting to read the first word.
section 7 serial eeprom universal non-transparent mode groups pci 6540 data book, version 1.0 7-2 ? 2003 plx technology, inc. all rights reserved. 7.4 universal non-transparent mode groups serial eeprom data in group 4 is loaded when the serial eeprom register (offset 02h) bits [4:1]=0111b. serial eeprom data in group 5 can be autoloaded only when bits [4:1]=1111b and one of the following conditions is met:  pci 6540 is in non-transparent mode, or  pci 6540 is in transparent mode with pin prv_dev=1 caution: if group 5 data is not needed in transparent mode with prv_dev=1, program group 5 locations in the serial eeprom to default values. 7.5 serial eeprom data structure following reset and the previously described conditions, the pci 6540 autoloads the registers with serial eeprom data. figure 7-1 describes the serial eeprom data structure. the pci 6540 accesses the serial eeprom, one word at a time. it is important to note that in the data phase, bit orders are the reverse of that in the address phase. the pci 6540 supports only serial eeprom device address 0. figure 7-1. serial eeprom data structure a c k m s b m s b l s b l s b s t o p data ( n ) data ( n +1) a c k a c k word address (n) m s b l s b 0 s t a r t 10 a c k w r i t e device address 10 0 00 10 a c k a c k word address ( n ) m s b l s b w r i t e device address 0 10 0 00 s t a r t 10 a c k r e a d device address 10 0 00 a c k m s b m s b l s b l s b data ( n )data ( n +1) n o a c k s t o p s t a r t read: wri t e:
section 7 serial eeprom data structure serial eeprom pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 7-3 7 ? serial eeprom 7.5.1 serial eeprom address and corresponding pci 6540 register table 7-1. serial eeprom address serial eeprom byte address pci configuration offset description 00h ? 01h ? serial eeprom signature. autoload proceeds only if it reads a value of 1516h on the first word loaded. value: 1516h = valid signature; otherwise, disables autoloading. 02h ? region enable. enables or disables certain regions of the pci configuration space from being loaded from the serial eeprom. valid combinations are: bit 0 = reserved. bits [4:1] = 0000b = stops autoload at serial eeprom offset 03h = group 1. 0001b = stops autoload at serial eeprom offset 13h = group 2. 0011b = stops autoload at serial eeprom offset 23h = group 3. 0111b = stops autoload at serial eeprom offset 27h = group 4. 1111b = autoloads all serial eeprom loadable registers = group 5. other combinations are undefined. bits [7:5] = reserved. 03h ? enable miscellaneous functions. bits [7:0] = reserved. end of group 1 04h ? 05h 00h ? 01h vendor id (pciidr[15:0]). 06h ? 07h 02h ? 03h transparent device id. non-transparent device id = transparent id with inverted bit 0. 08h reserved. 09h 09h transparent mode class code. contains low byte of class code register (pciccr). 0ah ? 0bh 0ah ? 0bh transparent mode class code higher bytes. contains upper bytes of class code register. 0ch 0eh transparent header type. 0dh 09h non-transparent mode class code. contains low byte of class code register. 0eh ? 0fh 0ah ? 0bh non-transparent mode class code higher bytes. contains upper bytes of class code register. 10h 0eh non-transparent header type. 11h 0fh built-in self test (bist) (pcibistr). not supported . set to 0. 12h ? 13h 50h internal arbiter control (iacntrl). end of group 2 14h 44h primary flow-through control (pftcr). 15h 45h timeout control (tocntrl). 16h ? 17h 46h ? 47h miscellaneous options (mscopt). 18h 48h primary initial prefetch count (pitlpcnt). 19h 49h secondary initial prefetch count (sitlpcnt). 1ah 4ah primary incremental prefetch count (pincpcnt). 1bh 4bh secondary incremental prefetch count (sincpcnt). 1ch 4ch primary maximum prefetch count (pmaxcnt). 1dh 4dh secondary maximum prefetch count (smaxcnt). 1eh 4eh secondary flow-through control (sftcr). 1fh e3h power management data (pmcdata).
section 7 serial eeprom serial eeprom data structure pci 6540 data book, version 1.0 7-4 ? 2003 plx technology, inc. all rights reserved. 20h ? 21h e0h power management control/status (pmcsr). 22h ? 23h deh power management capabilities (pmc). end of group 3 24h ? 25h 2ch subsystem vendor id. pcisvid; primary pci:2ch, secondary pci:6ch (non-transparent mode). 26h ? 27h 2eh subsystem id. pcisid; primary pci:2eh, secondary pci:6eh (non-transparent mode). end of group 4 28h ? reserved. 29h ? bits [2:0] = upstream address translation enable bits (upstne[26:24]; ext:0bh). bit 3 = upstream bar 0 i/o bit (upsbar0msk[6]=0; ext:0bh). bits [7:4] = upstream bar 0 translation address, bits [15:12] (upstnbar0[15:12]; ext:08h). 2ah ? 2bh ? upstream bar 0 translation address, bits [31:16] (upstnbar0[31:16]; ext:08h). 2ch ? bit 0 = upstream bar 0 prefetchable bit (upsbar0msk[7]; ext:0bh). bit 1 = upstream bar 1 64-bit (upsbar1msk[14]=1; ext:0bh). bit 2 = upstream bar 2 prefetchable bit (upsbar2msk[23]; ext:0bh). bit 3 = upstream bar 1 prefetchable bit (upsbar1msk[15]; ext:0bh). bits [7:4] = upstream bar 1 translation address, bits [23:20] (upstnbar0[23:20]; ext:08h). 2dh ? upstream bar 1 translation address, bits [31:24] (upstnbar1[31:24]; ext:09h). 2eh ? 2fh ? upstream bar 2 translation address, bits [15:0] (upstnbar2[15:0]; ext:0ah). 30h ? 31h ? upstream bar 2 translation address, bits [31:16] (upstnbar2[31:16]; ext:0ah). 32h ? 33h ? bits [4:0] = upstream bar 0 translation mask (upsbar0msk; ext:0bh). bits [10:5] = upstream bar 1 translation mask (upsbar1msk; ext:0bh). bits [15:11] = upstream bar 2 translation mask (upsbar2msk; ext:0bh). 34h ? reserved. 35h ? bits [2:0] = downstream address translation enable bits (dwntne[26:24]; ext:0fh). bit 3 = downstream bar 0 i/o bit (dwnbar0msk[6]=0; ext:0fh). bits [7:4] = downstream bar 0 translation address, bits [15:12] (dwntnbar0[15:12]; ext:0ch). 36h ? 37h ? downstream bar 0 translation address, bits [31:16] (dwntnbar0[31:16]; ext:0ch). 38h ? bit 0 = downstream bar 0 prefetchable bit (dwnbar0msk[7]; ext:0fh). bit 1 = downstream bar 1 prefetchable bit (dwnbar1msk[15]; ext:0fh). bit 2 = downstream bar 2 prefetchable bit (dwnbar2msk[23]; ext:0fh). bit 3 = downstream bar 1 64-bit (dwnbar1msk[14]=1; ext:0fh). bit [7:4] = downstream bar 1 translation address, bits [23:20] (dwntnbar1[23:20]; ext:0dh). 39h ? downstream bar 1 translation address, bits [31:24] (dwntnbar1[31:24]; ext:0dh). 3ah ? 3bh ? downstream bar 2 translation address, bits [15:0] (dwntnbar2[15:0]; ext:0eh). 3ch ? 3dh ? downstream bar 2 translation address, bits [31:16] (dwntnbar2[31:16]; ext:0eh). 3eh ? 3fh ? bits [4:0] = downstream bar 0 translation mask (dwnbar0msk; ext:0fh). bits [10:5] = downstream bar 1 translation mask (dwnbar1msk; ext:0fh). bits [15:11] = downstream bar 2 translation mask (dwnbar2msk; ext:0fh). end of group 5 table 7-1. serial eeprom address (continued) serial eeprom byte address pci configuration offset description
pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 8-1 8 ? pci bus operation 8 pci bus operation this section describes pci transactions to which the pci 6540 responds and those it initiates when operating with one or both of its interfaces in conventional pci mode. 8.1 conventional pci transactions table 8-1 lists the conventional pci command codes and transaction types to which the pci 6540 responds and initiates. the master and target columns indicate support for transactions wherein the pci 6540 initiates transactions as a master, and responds to transactions as a target, on the primary and secondary buses. table 8-1. conventional pci transactions cbe[3:0]# transaction type initiates as master responds as target primary secondary primary secondary 0000b interrupt acknowledge (not supported) nnnn 0001b special cycle (not supported) yynn 0010b i/o read y y y y 0011b i/o write y y y y 0100b reserved nnnn 0101b reserved nnnn 0110b memory read y y y y 0111b memory write y y y y 1000b reserved nnnn 1001b reserved nnnn 1010b configuration read n y y n 1011b configuration write type 1 y y type 1 1100b memory read multiple y y y y 1101b dual address cycle (dac) y y y y 1110b memory read line y y y y 1111b memory write and invalidate y y y y
section 8 pci bus operation single address phase pci 6540 data book, version 1.0 8-2 ? 2003 plx technology, inc. all rights reserved. as indicated in table 8-1, the following conventional pci commands are not supported by the pci 6540. the pci 6540 reacts to these commands as follows:  ignores the commands and does not generate reserved command codes.  never initiates an interrupt acknowledge transaction and, as a target, ignores interrupt acknowledge transactions. interrupt acknowledge transactions are expected to reside entirely on the primary pci bus closest to the host bridge.  does not respond to special cycle transactions. to generate special cycle transactions on other pci buses (downstream or upstream), use a type 1 configuration command.  does not generate type 0 configuration transactions on the primary interface. responds to type 0 configuration transactions on the secondary pci interface only if non-transparent mode is enabled. 8.2 single address phase the pci 6540 32-bit address uses a single address phase. this address is driven on ad[31:0], and the bus command is driven on p_cbe[3:0]#. the pci 6540 supports only the linear increment address mode, which is indicated when the lower two address bits are equal to 00b. if either of the lower two address bits is equal to a non-zero value, the pci 6540 automatically disconnects the transaction after the first data transfer. 8.3 dual address phase the pci 6540 supports the dual address cycle (dac) bus command to transfer 64-bit addresses. in dac transactions, the first address phase occurs during the initial frame# assertion, and the second address phase occurs one clock later. during the first address phase, the dac command is presented on cbe[3:0]#, and the lower 32 bits of the address on ad[31:0]. the second address phase retains the cycle command on cbe[3:0]#, and the upper 32 bits of the address on ad[31:0]. when a 64-bit master uses dac, the master must provide the upper 32 bits of the address on ad[63:32] and the command on cbe[7:4]# during the address phases of both transactions to allow 64-bit targets additional time to decode the transaction. dacs are used to access locations that are not in the first 4 gb of pci memory space. addresses in the first 4 gb of memory space always use a single address cycle (sac). the pci 6540 supports dacs in the downstream and upstream directions. the pci 6540 responds to dacs for the following commands only:  memory write  memory write and invalidate  memory read  memory read line  memory read multiple 8.4 device select (devsel#) generation the pci 6540 performs positive address decoding when accepting transactions on the primary or secondary bus. the pci 6540 never subtractively decodes. medium devsel# timing is used for 33 mhz operation and slow devsel# timing is used for 66 mhz operation. 8.5 data phase depending on the command type, the pci 6540 can support multiple data phase pci transactions. write transactions are treated as posted write or delayed write transactions. table 8-2 lists the forwarding method used for each type of write operation. table 8-2. write transaction forwarding transaction type forwarding type memory write posted memory write and invalidate i/o write delayed type 1 configuration write
section 8 data phase pci bus operation pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 8-3 8 ? pci bus operation 8.5.1 posted write transactions when the pci 6540 determines that a memory write transaction is to be forwarded across the bridge, the pci 6540 asserts devsel# with slow timing and trdy# in the same cycle, provided that sufficient buffer space is available in the posted write data queue, and that the queue contains fewer than four outstanding posted transactions. the pci 6540 can accept one quad-dword of write data every pci clock cycle ( that is , no target wait states are inserted). up to 256 bytes of posted write data are stored in internal posted write buffers and eventually delivered to the target. the pci 6540 continues to accept write data until one of the following occurs:  initiator normally terminates the transaction  cache line boundary or an aligned 4-kb boundary is reached, depending on transaction type  posted write data buffer fills when one of the last two events occurs, the pci 6540 returns a target disconnect to the requesting initiator on this data phase to terminate the transaction. after the posted write transaction is selected for completion, the pci 6540 requests ownership of the target bus. this can occur while the pci 6540 is receiving data on the initiator bus. after the pci 6540 has ownership of the target bus, and the target bus is detected in the idle condition, the pci 6540 generates the write cycle and continues to transfer write data until all write data corresponding to that transaction is delivered, or a target termination is received. if write data exists in the queue, the pci 6540 can drive one quad-dword of write data each pci clock cycle. if write data is flowing through the pci 6540 and the initiator stalls, the pci 6540 inserts wait states on the target bus if the queue empties. the pci 6540 ends the transaction on the target bus when one of the following conditions is met:  all posted write data was delivered to the target  target returns a target disconnect or retry (the pci 6540 starts another transaction to deliver the remaining write data)  target returns a target abort (the pci 6540 discards remaining write data) the master latency timer expires, and the pci 6540 no longer retains the target bus grant (the pci 6540 starts another transaction to deliver the remaining write data). 8.5.2 memory write and invalidate transactions memory write and invalidate transactions guarantee the transfer of entire cache lines. by default, the pci 6540 retries a memory write and invalidate cycle until there is space for one or more cache lines of data in the internal buffers. the pci 6540 then completes the transaction on the secondary bus as a memory write and invalidate cycle. the pci 6540 can also be programmed to accept memory write and invalidate cycles under the same conditions as normal memory writes. in this case, if the write buffer fills before an entire cache line is transferred, the pci 6540 disconnects and completes the write cycle on the secondary bus as a normal memory write cycle by way of the miscellaneous options register memory write and invalidate control bit (mscopt[12]; pci:46h). the pci 6540 disconnects memory write and invalidate commands at aligned cache line boundaries. the cache line size register (transparent mode ? pciclsr; pci:0ch, non- transparent mode ? pciclsr; primary pci:0ch, secondary pci:4ch and pcisclsr; primary pci:4ch, secondary pci:0ch) cache line size value provides the number of dwords in a cache line. for the pci 6540 to generate memory write and invalidate transactions, this cache line size value must be written to a value of 08h, 10h, or 20h dwords. if an invalid cache line size is programmed, wherein the value is 0, not a power of two, or greater than 20h dwords, the pci 6540 sets the cache line size to the minimum value of 08h. the pci 6540 always disconnects on the cache line boundary. when the memory write and invalidate transaction is disconnected before a cache line boundary is reached (typically because the posted write data buffer fills), the transaction is converted to a memory write transaction.
section 8 pci bus operation data phase pci 6540 data book, version 1.0 8-4 ? 2003 plx technology, inc. all rights reserved. 8.5.3 delayed write transactions a delayed write transaction forwards i/o write and type 1 configuration cycles by way of the pci 6540, and is limited to a single quad-dword data transfer. when a write transaction is first detected on the initiator bus, the pci 6540 claims the access and returns a target retry to the initiator. during the cycle, the pci 6540 samples the bus command, address, and address parity bits. the pci 6540 also samples the first data quad-dword, byte enable bits, and data parity. cycle information is placed into the delayed transaction queue if there are no other existing delayed transactions with the same cycle information, and if the delayed transaction queue is not full. when the pci 6540 schedules a delayed write transaction to be the next cycle to complete based on its ordering constraints, the pci 6540 initiates the transaction on the target bus. the pci 6540 transfers the write data to the target. if the pci 6540 receives a target retry in response to the write transaction on the target bus, the pci 6540 continues to repeat the write transaction until the data transfer is complete, or an error condition is encountered. if the pci 6540 is unable to deliver write data after 2 24 attempts (programmable through the timeout control register maximum retry counter control bits, tocntrl[2:0]; pci:45h), the pci 6540 ceases further write attempts and returns a target abort to the initiator. the delayed transaction is removed from the delayed transaction queue. the pci 6540 also asserts p_serr# if the command register p_serr# enable bit is set (transparent mode ? pcicr[8]=1; pci:42h, non-transparent mode ? pcicr[8]=1; primary pci:04h, secondary pci:44h). when the initiator repeats the same write transaction (same command, address, byte enable bits, and data), after the pci 6540 has completed data delivery and retains all complete cycle information in the queue, the pci 6540 claims the access and returns trdy# to the initiator, to indicate that the write data was transferred. if the initiator requests multiple quad-dwords, the pci 6540 asserts stop#, in conjunction with trdy#, to signal a target disconnect. only those bytes of write data with valid byte enable bits are compared. if any byte enable bits are turned off (driven high), the corresponding byte of write data is not compared. if the initiator repeats the write transaction before the data is transferred to the target, the pci 6540 returns a target retry to the initiator. the pci 6540 continues to return a target retry to the initiator until write data is delivered to the target or an error condition is encountered. when the write transaction is repeated, the pci 6540 does not make a new entry into the delayed transaction queue. the pci 6540 implements a discard timer that starts counting when the delayed write completion is at the head of the delayed transaction queue. the initial value of this timer can be set to one of four values, selectable through the primary and secondary bridge control register master timeout bits (transparent mode ? bcntrl[8:9]; pci:3eh, non-transparent mode ? bcntrl[8:9]; pci:42h shadow register, respectively), as well as the timeout control register master timeout divider bits (transparent mode only ? tocntrl[7:4]; pci:45h). if the discard timer expires before the write cycle is retried, the pci 6540 discards the delayed write transaction from the delayed transaction queue. the pci 6540 also conditionally asserts p_serr#.
section 8 data phase pci bus operation pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 8-5 8 ? pci bus operation 8.5.4 write transaction address boundaries the pci 6540 imposes internal address boundaries when accepting write data. the aligned address boundaries are used to prevent the pci 6540 from continuing a transaction over a device address boundary and to provide an upper limit on maximum latency. when the aligned address boundaries are reached (per conditions listed in table 8-3), the pci 6540 returns a target disconnect to the initiator. 8.5.5 buffering multiple write transactions the pci 6540 continues to accept posted memory write transactions if space for at least 1 dword of data in the posted write data buffer remains and there are fewer than four outstanding posted memory write cycles. if the posted write data buffer fills before the initiator terminates the write transaction, the pci 6540 returns a target disconnect to the initiator. delayed write transactions are posted when one or more open entries exist in the delayed transaction queue. the pci 6540 can queue up to four posted write transactions and four delayed transactions in both the downstream and upstream directions. 8.5.6 read transactions delayed read forwarding is used for all read transactions that cross the pci 6540. delayed read transactions are treated as prefetchable or non-prefetchable. table 8-4 delineates the read behavior (prefetchable or non-prefetchable) for each type of read operation. table 8-3. write transaction disconnect address boundaries transaction type condition aligned address boundary delayed write all disconnects after one data transfer posted memory write memory write disconnect control bit = 0 1 4-kb aligned address boundary memory write disconnect control bit = 1 1 1. memory write disconnect control bit is located in the chip control register in configuration space (transparent mode ? ccntrl[1]; pci:40h, non-transparent mode ? ccntrl[1]; pci:d8h). disconnects at cache line boundary table 8-4. read transaction prefetching transaction type read behavior i/o read never prefetches configuration read memory read downstream ? prefetches if address is in prefetchable space upstream ? prefetches if prefetch disable is off (default) memory read line always prefetches if request is for more than one data transfer memory read multiple
section 8 pci bus operation data phase pci 6540 data book, version 1.0 8-6 ? 2003 plx technology, inc. all rights reserved. 8.5.7 prefetchable read transactions a prefetchable read transaction is a read transaction wherein the pci 6540 performs speculative dword reads, transferring data from the target before the data is requested from the initiator. this behavior allows a prefetchable read transaction to consist of multiple data transfers. only the first byte enable bits can be forwarded. the pci 6540 enables all byte enable bits of subsequent transfers. prefetchable behavior is used for memory read line and memory read multiple transactions, as well as memory read transactions that fall into prefetchable memory space. the prefetched data amount depends on the transaction type. the amount of prefetching may also be affected by the amount of free buffer space available in the pci 6540 and by read address boundaries encountered. in addition, there are several pci 6540-specific registers that can be used to optimize read prefetch behavior. prefetching should not be used for those read transactions that cause side effects on the target device ( that is , control and status registers, fifos, and so forth). the target device bars indicate whether a memory address region is prefetchable. 8.5.8 non-prefetchable read transactions a non-prefetchable read transaction is a read transaction issued by the initiator into a non- prefetchable region. the transaction is used for i/o and configuration read transactions, as well as for memory reads from non-prefetchable memory space. in this case, the pci 6540 requests only 1 dword from the target and disconnects the initiator after delivery of the first dword of read data. use non-prefetchable read transactions for regions where extra read transactions could have side effects ( such as in fifo memory or the control registers). if it is important to retain the byte enable bit values during the data phase, use non-prefetchable read transactions. if these locations are mapped in memory space, use the memory read command and map the target into non-prefetchable (memory-mapped i/o) memory space to utilize non-prefetching behavior. 8.5.9 read prefetch address boundaries the pci 6540 imposes internal read address boundaries on read prefetching. the pci 6540 uses the address boundary to calculate the initial amount of prefetched data. during read transactions to prefetchable regions, the pci 6540 prefetches data until it reaches one of these aligned address boundaries, unless the target signals a target disconnect before reaching the read prefetch boundary. after reaching the aligned address boundary, the pci 6540 may optionally continue prefetching data, depending on certain conditions. (refer to section 18, ? pci flow-through optimization. ? ) when finished transferring read data to the initiator, the pci 6540 returns a target disconnect with the last data transfer, unless the initiator completes the transaction before delivering all the prefetched read data. remaining prefetched data is discarded. prefetchable read transactions in flow-through mode prefetch to the nearest aligned 4 kb address boundary, or until the initiator de-asserts frame#. table 8-5 delineates the read prefetch address boundaries for read transactions during non-flow- through mode. table 8-5. read prefetch address boundaries transaction type address space prefetch aligned address boundary configuration read ? 1 dword (no prefetch) i/o read memory read non-prefetchable memory read prefetchable configured by way of prefetch count registers memory read line memory read multiple
section 8 data phase pci bus operation pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 8-7 8 ? pci bus operation 8.5.10 delayed read requests the pci 6540 treats all read transactions as delayed read transactions ( that is , the read request from the initiator is posted into a delayed transaction queue). read data from the target is placed into the read data queue directed toward the initiator bus interface and transferred to the initiator when the initiator repeats the read transaction. when the pci 6540 accepts a delayed read request, it first samples the read address, read bus command, and address parity. when irdy# is asserted, the pci 6540 samples the byte enable bits for the first data phase. this information is entered into the delayed transaction queue. the pci 6540 terminates the transaction by signaling a target retry to the initiator. upon receiving the target retry, the initiator must to continue to repeat the same read transaction until at least one data transfer completes, or until it receives a target response other than a target retry (master or target abort). 8.5.11 delayed read completion with target when a delayed read request is scheduled to be executed, the pci 6540 arbitrates for the target bus and initiates the read transaction, using the exact read address and read command captured from the initiator during the initial delayed read request. if the read transaction is non-prefetchable, the pci 6540 drives the captured byte enable bits during the next cycle. if the transaction is a prefetchable read transaction, the pci 6540 drives the captured (first) byte enable bits, followed by 0 for the subsequent data phases. if the pci 6540 receives a target retry in response to the read transaction on the target bus, it repeats the read transaction until at least one data transfer completes or it encounters an error condition. if the transaction is terminated by way of a normal master termination or target disconnect after at least one data transfer is complete, the pci 6540 does not initiate further attempts to read additional data. if the pci 6540 is unable to obtain read data from the target after 2 24 attempts (default), the pci 6540 ceases further read attempts and returns a target abort to the initiator. the delayed transaction is removed from the delayed transaction queue. the pci 6540 also asserts p_serr# if the command register p_serr# enable bit is set (transparent mode ? pcicr[8]=1; pci:42h, non-transparent mode ? pcicr[8]=1; primary pci:04h, secondary pci:44h). after receiving devsel# and trdy# from the target, the pci 6540 transfers the data stored in the internal read fifo, then terminates the transaction. the pci 6540 can accept 1 dword/qword of read data during each pci clock cycle ? no master wait states are inserted. the number of dwords/qwords transferred during a delayed read transaction depends on the conditions delineated in table 8-5 (assuming no target disconnect is received). 8.5.12 delayed read completion on initiator bus when the transaction completes on the target bus, the delayed read data is at the head of the read data queue. when all ordering constraints with posted write transactions are satisfied, the pci 6540 transfers the data to the initiator when the initiator repeats the transaction. for memory read transactions, the pci 6540 aliases the memory read, memory read line, and memory read multiple bus commands when matching the bus command of the transaction to the bus command in the delayed transaction queue. the pci 6540 returns a target disconnect along with the transfer of the last dword of read data to the initiator. if the pci 6540 initiator terminates the transaction before all read data is transferred, the remaining read data in the data buffers is discarded. when the master repeats the transaction and starts transferring prefetchable read data from the data buffers while the read transaction on the target bus is in progress, and before a read boundary is reached on the target bus, the read transaction starts operating in flow-through mode. because data is flowing from the target to the initiator through the data buffers, long read bursts can be sustained. in this case, the read transaction is allowed to continue until the initiator terminates the transaction, an aligned 4 kb address boundary is reached, or the buffer fills, whichever occurs first. when the buffer empties, the pci 6540 reflects the stalled condition to the initiator by de-asserting trdy# for a maximum of eight clock periods until more read data is available; otherwise, the pci 6540 disconnects the cycle. when the initiator
section 8 pci bus operation data phase pci 6540 data book, version 1.0 8-8 ? 2003 plx technology, inc. all rights reserved. terminates the transaction, the pci 6540 de-assertion of frame# on the initiator bus is forwarded to the target bus. any remaining read data is discarded. the pci 6540 implements a discard timer that starts counting when the delayed read completion is at the head of the delayed transaction queue, and the read data is at the head of the read data queue. the initial value of this timer is programmable through the primary maximum latency register (pcipmlr[1:0]; pci:3fh). if the initiator does not repeat the read transaction before the discard timer expires, the pci 6540 discards the read transaction, discards the read data from its queues, and conditionally asserts p_serr#. the pci 6540 has the capability to post multiple delayed read requests, up to a maximum of four in each direction. if an initiator starts a read transaction that matches the address and read command of a queued read transaction, the current read command is not stored because it is contained in the delayed transaction queue. 8.5.13 configuration transactions configuration transactions are used to initialize a pci system. every pci device has a configuration space that is accessed by configuration commands. all registers are accessible only in configuration space. in addition to accepting configuration transactions for initialization of its own configuration space, the pci 6540 forwards configuration transactions for device initialization in hierarchical pci systems, as well as special cycle generation. during non-transparent mode, the pci 6540 can also accept configuration transactions on its secondary interface. (refer to section 20, ? non-transparent mode. ? ) to support hierarchical pci bus systems, type 0 and type 1 configuration transactions are specified. type 0 configuration transactions are issued when the intended target resides on the same pci bus as the initiator. type 0 configuration transactions are identified by the configuration command and the lowest two bits of the address are set to 00b. type 1 configuration transactions are issued when the intended target resides on another pci bus, or a special cycle is to be generated on another pci bus. type 1 configuration commands are identified by the configuration command and the lowest two address bits are set to 01b. the register number is found in both type 0 and type 1 formats and provides the dword address of the configuration register to be accessed. the function number is also included in both type 0 and type 1 formats, and indicates which function of a multi-function device is to be accessed. for single-function devices, this value is not decoded. type 1 configuration transaction addresses also include five bits, designating the device number that identifies the target pci bus device to be accessed. in addition, the bus number in type 1 transactions specifies the target pci bus. 8.5.14 pci 6540 type 0 access the configuration space is accessed by a type 0 configuration transaction on the primary interface. the configuration space is not accessible from the secondary bus. the pci 6540 responds to a type 0 configuration transaction by asserting p_devsel# when the following conditions are met during the address phase:  bus command is a configuration read or write transaction.  lower two address bits on p_ad[1:0] must be 01b.  p_idsel must be asserted.  pci 6540 limits all configuration accesses to a single dword data transfer and returns a target disconnect with the first data transfer if additional data phases are requested. because read transactions to configuration space do not have side effects, all bytes in the requested dword are returned, regardless of the byte enable bit values.  type 0 configuration read and write transactions do not use data buffers ( that is , these transactions are immediately completed, regardless of the data buffers state). the pci 6540 ignores all type 0 transactions initiated on the secondary interface.
section 8 data phase pci bus operation pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 8-9 8 ? pci bus operation 8.5.15 type 1-to-type 0 translation type 1 configuration transactions are specifically used for device configuration in a hierarchical pci bus system. a pci-to-pci bridge is the only type of device that should respond to a type 1 configuration command. type 1 configuration commands are used when the configuration access is intended for a pci device that resides on a pci bus other than the one where the type 1 transaction is generated. the pci 6540 performs a type 1-to-type 0 translation when the type 1 transaction is generated on the primary bus and is intended for a device attached directly to the secondary bus. the pci 6540 must convert the configuration command to a type 0 format, enabling the secondary bus device to respond to the command. type 1-to-type 0 translations are performed only in the downstream direction ( that is , the pci 6540 generates a type 0 transaction only on the secondary bus, and never on the primary bus). the pci 6540 responds to a type 1 configuration transaction and translates the transaction into a type 0 transaction on the secondary bus when the following conditions are met during the address phase:  lower two address bits on p_ad[1:0] are 01b  bus number in address field p_ad[23:16] is equal to the secondary bus number register value in configuration space (pcisbno; pci:19h)  bus command on p_cbe[3:0]# is a configuration read or write transaction when translating a type 1 transaction to a type 0 transaction on the secondary interface, the pci 6540 performs the following translations to the address:  sets the lower two address bits on s_ad[1:0] to 00b  decodes the device number and drives the bit pattern specified in table 8-6 on s_ad[31:16] for the purpose of asserting the device ? s idsel signal  sets s_ad[15:11] to 0h  leaves the function and register number fields unchanged the pci 6540 asserts a unique address line, based on the device number. these address lines may be used as s_idsel signals. mapping of the address lines depends on the device number in the type 1 address bits, p_ad[15:11]. table 8-6 presents the mapping used by the pci 6540. the pci 6540 can assert up to 16 unique address lines to be used as s_idsel signals for up to 16 secondary bus devices, for device numbers ranging from 0 to 15. because of the pci bus electrical loading constraints, more than 16 idsel signals should not be necessary. however, if more than 15 device numbers are needed, an external method of generating idsel lines must be used, and the upper address bits are not asserted. the configuration transaction is translated and passed from primary-to-secondary bus. if an idsel pin is not asserted to a secondary device, the transaction terminates in a master abort. the pci 6540 forwards type 1-to-type 0 configuration read or write transactions as delayed transactions. type 1-to-type 0 configuration read or write transactions are limited to a single 32-bit data transfer. when type 1-to-type 0 configuration cycles are forwarded, address stepping is used, and a valid address is driven on the bus before frame# assertion. type 0 configuration address stepping is programmable through the miscellaneous options register address step control bits (mscopt[6:4]; pci:46h).
section 8 pci bus operation data phase pci 6540 data book, version 1.0 8-10 ? 2003 plx technology, inc. all rights reserved. table 8-6. device number to idsel s_ad pin mapping device number p_ad[15:11] secondary idsel s_ad[31:16] s_ad bit 0 00000b 0000_0000_0000_0001b 16 1 00001b 0000_0000_0000_0010b 17 2 00010b 0000_0000_0000_0100b 18 3 00011b 0000_0000_0000_1000b 19 4 00100b 0000_0000_0001_0000b 20 5 00101b 0000_0000_0010_0000b 21 6 00110b 0000_0000_0100_0000b 22 7 00111b 0000_0000_1000_0000b 23 8 01000b 0000_0001_0000_0000b 24 9 01001b 0000_0010_0000_0000b 25 10 01010b 0000_0100_0000_0000b 26 11 01011b 0000_1000_0000_0000b 27 12 01100b 0001_0000_0000_0000b 28 13 01101b 0010_0000_0000_0000b 29 14 01110b 0100_0000_0000_0000b 30 15 01111b 1000_0000_0000_0000b 31 special cycle 1xxxxb 0000_0000_0000_0000b none
section 8 data phase pci bus operation pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 8-11 8 ? pci bus operation 8.5.16 type 1-to-type 1 forwarding type 1-to-type 1 transaction forwarding provides a hierarchical configuration mechanism when two or more levels of pci-to-pci bridges are used. when the pci 6540 detects a type 1 configuration transaction intended for a pci bus downstream from the secondary bus, the pci 6540 forwards the transaction unchanged to the secondary bus. ultimately, this transaction is translated to a type 0 configuration command or to a special cycle transaction by a downstream pci-to-pci bridge. downstream type 1-to-type 1 forwarding occurs when the following conditions are met during the address phase:  lower two address bits on ad[1:0] are equal to 01b  bus number falls in the range defined by the lower limit (exclusive) in the secondary bus number register (pcisbno; pci:19h) and upper limit (inclusive) in the subordinate bus number register (pcisubno; pci:1ah)  bus command is a configuration read or write transaction the pci 6540 also supports type 1-to-type 1 upstream forwarding of configuration write transactions to support upstream special cycle generation. a type 1 configuration command is forwarded upstream when the following conditions are met:  lower two address bits on ad[1:0] are equal to 01b  bus number falls outside the range defined by the lower limit (inclusive) in the secondary bus number register (pcisbno; pci:19h) and upper limit (inclusive) in the subordinate bus number register (pcisubno; pci:1ah)  device number in address bits ad[15:11] is equal to 11111b  function number in address bits ad[10:8] is equal to 111b  bus command is a configuration write transaction  pci 6540 forwards type 1-to-type 1 configuration write transactions as delayed transactions. type 1- to-type 1 configuration write transactions are limited to a single data transfer 8.5.17 special cycles the type 1 configuration mechanism is used to generate special cycle transactions in hierarchical pci systems. special cycle transactions are ignored by operating as a target and are not forwarded across the bridge. special cycle transactions can be generated from type 1 configuration write transactions in either the downstream or upstream direction. the pci 6540 initiates a special cycle on the target bus when a type 1 configuration write transaction is detected on the initiating bus and the following conditions are met during the address phase:  lower two address bits on ad[1:0] are equal to 01b  device number in address bits ad[15:11] is equal to 11111b  function number in address bits ad[10:8] is equal to 111b  register number in address bits ad[7:2] is equal to 0h  bus number is equal to the secondary bus number register value in configuration space (pcisbno; pci:19h) for downstream forwarding, or equal to the primary bus number register value in configuration space (pcipbno; pci:18h) for upstream forwarding  bus command on the initiator cbe bus is a configuration write command when the pci 6540 initiates a transaction on the target interface, the bus command is changed from configuration write to special cycle. the address and data are forwarded, unchanged. devices that use special cycle ignore the address and decode only the bus command. the data phase contains the special cycle message. the transaction is forwarded as a delayed transaction because special cycles complete as master aborts. after the transaction is completed on the target bus, through master abort condition detection, the pci 6540 responds with trdy# to the next attempt of the configuration transaction from the initiator. if more than one data transfer is requested, the pci 6540 responds with a target disconnect operation during the first data phase.
section 8 pci bus operation transaction termination in conventional pci mode pci 6540 data book, version 1.0 8-12 ? 2003 plx technology, inc. all rights reserved. 8.6 transaction termination in conventional pci mode this section describes how the pci 6540 returns transaction termination conditions to the initiator. the initiator can terminate transactions with one of the following types of termination:  normal termination ? occurs when the initiator de-asserts frame# at the beginning of the last data phase, and de-asserts irdy# at the end of the last data phase in conjunction with trdy# or stop# assertion from the target.  master abort ? occurs when no target response is detected. when the initiator does not detect a devsel# from the target within five clock cycles after asserting frame#, the initiator terminates the transaction with a master abort. if frame# is asserted, the initiator de-asserts frame# on the next cycle, then de-asserts irdy# on the following cycle. irdy# must be asserted in the same cycle in which frame# is de-asserted. if frame# was de-asserted, irdy# can be de-asserted on the next clock cycle following master abort condition detection. the target can terminate transactions with one of the following types of termination:  normal termination ? trdy# and devsel# are asserted in conjunction with frame# de-assertion and irdy# assertion.  target retry ? stop# and devsel# are asserted without trdy# during the first data phase. no data transfers during the transaction. this transaction must be repeated.  target disconnect (with data transfer) ? stop# and devsel# are asserted with trdy#. signals that this is the last data transfer of the transaction.  target disconnect (without data transfer) ? stop# and devsel# are asserted without trdy# after previous data transfers. indicates that no further data transfers are made during this transaction.  target abort ? stop# is asserted without devsel# and trdy#. indicates that the target is never able to complete this transaction. devsel# must be asserted for at least one cycle during the transaction before the target abort is signaled. 8.6.1 pci 6540-initiated master termination as an initiator, the pci 6540 uses normal termination if devsel# is returned by the target within five clock cycles of pci 6540 assertion of frame# on the target bus. in this case, the pci 6540 terminates a transaction when the following conditions are met:  during delayed write transactions, a single dword/ qword is delivered.  during non-prefetchable read transactions, a single dword/qword is transferred from the target.  during prefetchable read transactions, a prefetch boundary is reached.  for posted write transactions, all write data for the transaction is transferred from data buffers to the target.  for burst transfers ( except memory write and invalidate transactions), the master latency timer expires and the pci 6540 bus grant is de-asserted.  target terminates the transaction with a retry, disconnect, or target abort.  if the pci 6540 is delivering posted write data when it terminates the transaction because the master latency timer expires, the pci 6540 initiates another transaction to deliver the remaining write data. the transaction address is updated to reflect the address of the current dword to be delivered. if the pci 6540 is prefetching read data when it terminates the transaction because the master latency timer expires, the pci 6540 does not repeat the transaction to obtain additional data. 8.6.2 master abort received by pci 6540 if the initiator initiates a transaction on the target bus and does not detect devsel# returned by the target within five clock cycles of frame# assertion, the pci 6540 terminates the transaction as specified through the bridge control register master abort mode bit (transparent mode ? bcntrl[5]; pci:3eh, non- transparent mode ? bcntrl[5]; pci:42h shadow register, respectively). for delayed read and write transactions, the pci 6540 can assert trdy# and return ffff_ffffh for reads, or return a target abort. serr# is also optionally asserted.
section 8 transaction termination in conventional pci mode pci bus operation pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 8-13 8 ? pci bus operation when a master abort is received in response to a posted write transaction, the pci 6540 discards the posted write data and makes no further attempts to deliver the data. the pci 6540 sets the status register received master abort bit when the master abort is received on the primary bus (transparent mode ? pcisr[13]=1; pci:06h, non-transparent mode ? pcisr[13]=1; primary pci:06h, secondary pci:46h), or the secondary status register received master abort bit when the master abort is received on the secondary interface (transparent mode ? pcissr [13]=1; pci:1eh, non-transparent mode ? pcissr [13]=1; primary pci:46h, secondary pci:06h). when the master abort mode bit is set and a master abort is detected in response to a posted write transaction, the pci 6540 also asserts p_serr#, if enabled (transparent mode ? pcicr[8]=1; pci:42h, non-transparent mode ? pcicr[8]=1; primary pci:04h, secondary pci:44h), but not disabled by the device-specific p_serr# disable for master aborts that occur during posted write transactions. (refer to table 8-7.) 8.6.3 target termination received by pci 6540 when the pci 6540 initiates a transaction on the target bus and the target responds with devsel#, the target can end the transaction with one of the following types of termination:  normal termination (upon frame# de-assertion)  target retry  target disconnect  target abort the pci 6540 controls these terminations using various methods, depending on the type of transaction performed. table 8-7. p_serr# assertion requirements in response to master abort on posted write mode pci offset description bit value transparent 06h received target abort pcisr[13] 1 non-transparent primary:06h, secondary:46h transparent 42h p_serr# enable pcicr[8] 1 non-transparent primary:04h, secondary:44h transparent 64h master abort on posted write pserred[4] 0 non-transparent 96h
section 8 pci bus operation transaction termination in conventional pci mode pci 6540 data book, version 1.0 8-14 ? 2003 plx technology, inc. all rights reserved. 8.6.3.1 delayed write target termination response when the pci 6540 initiates a delayed write transaction, the type of target termination received from the target can be returned to the initiator. table 8-8 delineates the response to each type of target termination that occurs during a delayed write transaction. the pci 6540 repeats a delayed write transaction until the pci 6540:  completes at least one data transfer  receives a master abort  receives a target abort the pci 6540 makes 2 24 write attempts (default), resulting in a response of target retry. after the pci 6540 makes 2 24 attempts of the same delayed write transaction on the target bus, the pci 6540 asserts p_serr# if the command register p_serr# enable bit is set and the implementation-specific p_serr# disable bit for this condition is not set. (refer to table 8-9.) the pci 6540 stops initiating transactions in response to that delayed write transaction and the delayed write request is discarded. upon a subsequent write transaction attempt by the initiator, the pci 6540 returns a target abort. table 8-8. response to delayed write target termination target termination response normal returns disconnect to initiator with first data transfer only if multiple data phases requested. target retry returns target retry to initiator. continue write attempts to target. target disconnect returns disconnect to initiator with first data transfer only if multiple data phases requested. target abort returns target abort to initiator. sets target interface status register received target abort bit. sets initiator interface status register signaled target abort bit. mode initiator (primary bus) target (secondary bus) initiator (secondary bus) target (primary bus) transparent pcisr[11]=1; pci:06h pcissr[12]=1; pci:1eh pcisr[12]=1; pci:06h pcissr[11]=1; pci:1eh non-transparent pcisr[11]=1; primary pci:06h, secondary pci:46h pcissr[12]=1; primary pci:46h, secondary pci:06h pcisr[12]=1; primary pci:06h, secondary pci:46h pcissr[11]=1; primary pci:46h, secondary pci:06h table 8-9. p_serr# assertion requirements in response to delayed write mode pci offset description bit transparent 42h p_serr# enable pcicr[8]=1 non-transparent primary:04h, secondary:44h transparent 64h delayed configuration or i/o write non-delivery pserred[5]=0 non-transparent 96h
section 8 transaction termination in conventional pci mode pci bus operation pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 8-15 8 ? pci bus operation 8.6.3.2 posted write target termination response when the pci 6540 initiates a posted write transaction, the target termination cannot be returned to the initiator. table 8-10 delineates the response to each type of target termination that occurs during a posted write transaction. when a target retry or disconnect is returned and posted write data associated with that transaction remains in the write buffers, the pci 6540 initiates another write transaction to attempt to deliver the remaining write data. in the case of a target retry, the same address is driven as for the initial write transaction attempt. if a target disconnect is received, the address that is driven on a subsequent write transaction attempt is updated to reflect the current dword address. if the initial write transaction is a memory write and invalidate transaction, and a partial delivery of write data to the target is performed before a target disconnect is received, the pci 6540 uses the memory write command to deliver the remaining write data because less than a cache line is transferred in the subsequent write transaction attempt. after the pci 6540 makes 2 24 write attempts and fails to deliver all the posted write data associated with that transaction, the pci 6540 asserts p_serr#, if enabled in the command register, and the device-specific p_serr# disable bit for this condition is not set. (refer to table 8-11.) the write data is discarded. table 8-10. response to posted write target termination target termination response normal no additional action. target retry repeats write transaction to target. target disconnect initiates write transaction to deliver remaining posted write data. target abort sets target interface status register received target abort bit. asserts p_serr#, if enabled, and sets the primary status register signaled system error bit. mode initiator (primary bus) target (secondary bus) transparent pcicr[8]=1; pci:42h pcisr[14]=1; pci:06h pcissr[12]=1; pci:1eh non-transparent pcicr[8]=1; primary pci:04h, secondary pci:44h pcisr[14]=1; primary pci:06h, secondary pci:46h pcissr[12]=1; primary pci:46h, secondary pci:06h table 8-11. p_serr# assertion requirements in response to posted write parity error mode pci offset description bit transparent 42h p_serr# enable pcicr[8]=0 non-transparent primary:04h, secondary:44h transparent 64h posted write parity error pserred[1]=0 non-transparent 96h
section 8 pci bus operation transaction termination in conventional pci mode pci 6540 data book, version 1.0 8-16 ? 2003 plx technology, inc. all rights reserved. 8.6.3.3 delayed read target termination response when the pci 6540 initiates a delayed read transaction, the abnormal target responses can be returned to the initiator. other target responses depend on the amount of data the initiator requests. table 8-12 delineates the response to each type of target termination that occurs during a delayed read transaction. the pci 6540 repeats a delayed read transaction until the pci 6540:  completes at least one data transfer  receives a master abort  receives a target abort  produces 2 24 read attempts, resulting in a response of target retry after the pci 6540 produces 2 24 attempts of the same delayed read transaction on the target bus, the pci 6540 asserts p_serr# if the command register p_serr# enable bit is set and the implementation- specific p_serr# disable bit for this condition is not set. (refer to table 8-13.) the pci 6540 stops initiating transactions in response to that delayed read transaction, and the delayed read request is discarded. upon a subsequent read transaction attempt by the initiator, the pci 6540 returns a target abort. table 8-12. response to delayed read target termination target termination response normal if prefetchable, target disconnects only if initiator requests more data than read from target. if non-prefetchable, target disconnects on first data phase. target retry re-initiates read transaction to target. target disconnect if initiator requests more data than read from target, returns target disconnect to initiator. target abort returns target abort to initiator. sets target interface status register received target abort bit. sets initiator interface status register signaled target abort bit. mode initiator (primary bus) target (secondary bus) initiator (secondary bus) target (primary bus) transparent pcisr[11]=1; pci:06h pcissr[12]=1; pci:1eh pcisr[12]=1; pci:06h pcissr[11]=1; pci:1eh non-transparent pcisr[11]=1; primary pci:06h, secondary pci:46h pcissr[12]=1; primary pci:46h, secondary pci:06h pcisr[12]=1; primary pci:06h, secondary pci:46h pcissr[11]=1; primary pci:46h, secondary pci:06h table 8-13. p_serr# assertion requirements in response to delayed read mode pci offset description bit transparent 42h p_serr# enable pcicr[8]=1 non-transparent primary:04h, secondary:44h transparent 64h delayed read-no data from target pserred[6]=0 non-transparent 96h
section 8 transaction termination in conventional pci mode pci bus operation pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 8-17 8 ? pci bus operation 8.6.4 pci 6540-initiated target termination the pci 6540 can return a target retry, disconnect, or abort to an initiator for reasons other than detection of that condition at the target interface. 8.6.4.1 target retry when it cannot accept write data or return read data as a result of internal conditions, the pci 6540 returns a target retry to the initiator when any of the following conditions are met:  delayed write transactions  transaction is in the process of entering the delayed transaction queue.  transaction has entered the delayed transaction queue, but target response has not been received.  target response was received, but the posted memory write ordering rule prevents the cycle from completing.  delayed transaction queue is full; therefore, transaction cannot be queued.  transaction with the same address and command was queued.  locked sequence is being propagated across the pci 6540, and the write transaction is not a locked transaction.  target bus is locked and the write transaction is a locked transaction.  delayed read transactions  transaction is in the process of entering the delayed transaction queue.  the read request was queued, but read data is not yet available.  data was read from the target, but the data is not at the head of the read data queue, or a posted write transaction precedes it.  delayed transaction queue is full, and the transaction cannot be queued.  delayed read request with the same address and bus command was queued.  locked sequence is being propagated across the pci 6540, and the read transaction is not a locked transaction.  target bus is locked and the write transaction is a locked transaction.  posted write transactions  posted write data buffer does not contain sufficient space for the address and at least two qwords of write data.  locked sequence is being propagated across the pci 6540, and the write transaction is not a locked transaction. when a target retry is returned to a delayed transaction initiator, the initiator must repeat the transaction with the same address and bus command, as well as the data if this is a write transaction, within the time frame specified by the master timeout value; otherwise, the transaction is discarded from the buffers.
section 8 pci bus operation transaction termination in conventional pci mode pci 6540 data book, version 1.0 8-18 ? 2003 plx technology, inc. all rights reserved. 8.6.4.2 target disconnect the pci 6540 returns a target disconnect to an initiator when the pci 6540:  reaches an internal address boundary  reaches a 4 kb boundary for a posted memory write cycle  cannot accept further write data  contains no further read data to deliver 8.6.4.3 target abort the pci 6540 returns a target abort to an initiator when the pci 6540:  returns a target abort from the intended target  detects a master abort on the target, and the master abort mode bit is set (transparent mode ? bcntrl[5]=1; pci:3eh, non-transparent mode ? bcntrl[5]=1; pci:42h shadow register, respectively)  cannot obtain delayed read data from the target or nor deliver delayed write data to the target after 2 24 attempts when returning a target abort to the initiator, the pci 6540 sets the status register signaled target abort bit corresponding to the initiator interface. (refer to table 8-14.) table 8-14. response to target abort mode initiator (primary bus) initiator (secondary bus) transparent pcisr[11]=1; pci:06h pcisr[12]=1; pci:06h non-transparent pcisr[11]=1; primary pci:06h, secondary pci:46h pcisr[12]=1; primary pci:06h, secondary pci:46h
pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 9-1 9 ? pci-x bus operation 9 pci-x bus operation this section describes pci-x transactions that the pci 6540 responds to as a target and those it initiates as a master when operating with one or both of its interfaces in pci-x mode. 9.1 overview because the pci 6540 is a pci-x bridge (capable of operating in pci-x mode), each of the pci 6540 interfaces (primary or secondary) is capable of operating in conventional pci mode when a conventional pci device is installed (pci-xcap is connected to ground). the pci 6540 supports pci-x mode in the following way:  source bridge for the primary bus informs the pci 6540 of the primary bus mode, with the pci-x initialization pattern at the rising edge of p_rstin#  senses s_pci-xap state and properly initializes the secondary bus devices  supports 64-bit addressing on both interfaces  implements a 64-bit ad bus on either interface  completes all dword transactions and burst memory read transactions as split transactions, if the transaction crosses the pci 6540 and the originating interface is in pci-x mode  pci 6540 does not support system topologies, special cycle, and interrupt acknowledge cases (in conventional pci nor pci-x mode) 9.2 general bus rules when operating in pci-x mode, the pci 6540 adheres to the following pci-x transactions rules:  address phase is the phase in which frame# is asserted. in the address phase, the ad bus contains the starting address ( except for split completions) and the cbe bus contains the command.  starting address of configuration read and write transactions is aligned to a dword boundary. split completion transactions use only a partial starting address.  attribute phase follows the address phase(s).  in the target response phase, the cbe bus is reserved and driven high (the clock after the attribute phase).  burst transactions include the byte count (number of bytes between the first byte of the transaction and the last byte of the sequence, inclusive) in the attributes.  dword transactions do not use a byte count and reserve the attribute byte count field.  target response phase is one or more clocks after the attribute phase and ends when the target asserts devsel#. if no target asserts devsel#, there are no data phases (master abort).  transactions using the i/o read and write and configuration read and write commands (one data phase transaction) are initiated only as 32-bit transactions (req64# is de-asserted, as in conventional pci mode).  for memory write transactions, the byte count is not adjusted for bytes whose byte enables are de-asserted within the transaction (byte count is the same). table 9-1 lists the definitions for typical conventional pci (provided for reference) and pci-x transaction phases.
section 9 pci-x bus operation general bus rules pci 6540 data book, version 1.0 9-2 ? 2003 plx technology, inc. all rights reserved. 9.2.1 initiator rules when operating in pci-x mode, the pci 6540 adheres to the following rules when initiating a transaction:  begins a transaction by asserting frame# within two clocks after gnt# is asserted and the bus is idle (within six clocks if the transaction uses a configuration command).  asserts irdy# two clocks after the attribute phase (in pci-x, wait states are not allowed for initiators).  de-asserts frame# one clock before the last data phase (for four or more data phases) or two clocks after the target asserts trdy# for single data phase (or terminates the transaction with another method).  de-asserts irdy# one clock after the last data phase (for four or more data phases) or two clocks after the target asserts trdy# for single data phase (or terminates the transaction with another method).  ends the transaction as a master abort if no target asserts devsel# on or before the sub decode time.  for write and split completion transactions, the pci 6540 drives the first data value on the ad bus two clocks after the attribute phase and advances to the second data value (for burst transaction with more than one data phase) two clocks after the target asserts devsel# (in anticipation of the target asserting trdy#). if the target inserts wait states (by not asserting trdy# after devsel# is asserted), the pci 6540 toggles between the first and second data values until the target asserts trdy# (or terminates the transaction with another method).  terminates a transaction when the byte count is satisfied. disconnects a burst transaction (before the byte count is satisfied) only on an adb.  the pci 6540 retains 64 clocks of latency timer value. it disconnects the current transaction on the next adb if the latency timer expires and gnt# is de-asserted. 9.2.2 target rules when operating in pci-x mode, the pci 6540 adheres to the following rules when responding to a transaction as a target:  memory address range for the pci 6540 (and all devices) is no smaller than 128 bytes and aligned to adbs. table 9-1. transaction phase definitions conventional pci transaction phases description pci-x transaction phases description address one clock for sac. two clocks for dac. address one clock for sac. two clocks for dac. data clocks (after the address phase) in which data transfer is allowed. attribute one clock. provides further details about the transaction. initiator termination initiator signals the end of the transaction on the last data phase. target response one or more clocks when the target claims the transaction by asserting devsel#. turn-around idle clock for changing from one signal driver to another. data clocks in which data transfer is allowed. initiator termination initiator signals the end of the transaction one clock before the last data phase. turn-around idle clock for changing from one signal driver to another.
section 9 general bus rules pci-x bus operation pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 9-3 9 ? pci-x bus operation  claims the transaction by asserting devsel#, using decode b.  does not signal wait state after the first data phase. signals split response, target abort, or retry within eight clocks of frame# assertion and signals single data phase disconnect (only on the first data phase), data transfer, or disconnect at the next adb within 16 clocks of frame# assertion.  may signal target abort on any data phase regardless of its relationship to an adb.  if devsel#, stop#, and trdy# are not de-asserted, the pci 6540 de-asserts these signals one clock after the last data phase, then floats them one clock after that. 9.2.3 bus arbitration rules the following are the bus arbitration rules:  pci 6540 asserts and de-asserts req# on any clock (no requirement to de-assert req# after a target termination).  pci 6540 de-asserts req# on any clock, independent of whether gnt# is asserted (without transaction initiation after gnt# is asserted).  arbiter asserts gnt# on any clock if all the gnt# signals are de-asserted. gnt x # remain asserted for a minimum of five clocks while the bus is idle or until the initiator asserts frame# or de-asserts req#.  if only one device asserts req#, the arbiter holds gnt# asserted to that device.  if the arbiter de-asserts gnt# to one device, it must wait until the next clock to assert gnt# to another device.  fast back-to-back transactions are not allowed in pci-x mode. 9.2.4 configuration transaction rules when operating in pci-x mode:  initiators must drive the address for four clocks before asserting frame#  transaction must include the target device number in ad[15:11] of the address phase  type 0 configuration write transaction target stores its device and bus numbers in its internal registers 9.2.5 parity error rules  in pci-x mode, when the pci 6540 detects a data parity error while receiving data ( for example , the target of a write or split completion, or initiator of a read), the pci 6540 asserts perr# on the second clock after par and par64 are driven (one clock later than conventional pci mode).  during read transactions, as a target, the pci 6540 drives par and par64 on clock n+1 for the read data it drives on clock n and the byte enables driven by the initiator on clock n+1 .  during write transactions, as an initiator, the pci 6540 drives par64 and par on clock n+1 for the write data and byte enables it drives on clock n .  pci 6540 asserts serr# when it detects a parity error during an attribute phase. 9.2.6 bus data width rules  in pci-x mode, the width of each transaction is determined with a handshake protocol (similar to conventional pci protocol) on req64# and ack64#  pci 6540 implements 64-bit in both its interfaces and is capable of generating a 64-bit memory address  attribute phase is always a single clock long for both 64- and 32-bit initiators  only burst transactions (memory commands other than memory read dword) use 64-bit data transfers 9.2.7 split transaction rules  transactions that are terminated with split response result in one or more split completion transactions  split completions contain read data or a split completion message, but not both  if returning read data, the completer must return all data (the full byte count) unless an error occurs  requester must accept all split completion data phases, and can terminate a split completion with data transfer or target abort  if the request is a write transaction, or if the completer encounters an error while executing the request, the completer sends a split completion message to the requester
section 9 pci-x bus operation pci-x sequences pci 6540 data book, version 1.0 9-4 ? 2003 plx technology, inc. all rights reserved. 9.3 pci-x sequences one or more transactions of a single logical transfer is called a sequence . if a sequence is broken into more than one transaction, the bytes of all these transactions are included in the request byte count that started the sequence. each transaction in the same sequence carries the same requester id and tag. the pci 6540 does not initiate a new sequence using the same tag until the previous sequence using that tag is complete. the sequence has more than one transaction if it is a burst write and disconnected by the initiator or target. the initiator must resume the sequence by initiating another burst write transaction using the same command and adjusting the starting address and byte count for the data.  if the sequence is a burst write and the target signals a target abort or no target responds (master abort), the sequence ends when the transaction terminates.  if the sequence is a burst read that executes as an immediate transaction, the sequence terminates when the transaction terminates. the requester is not required to resume an immediate read sequence. when a sequence crosses the pci 6540, the number of transactions within the sequence on each bus is determined by the device behavior on each bus. the pci 6540 maintains split completions, in address order, for the same sequence. 9.4 adb and buffer size an allowable disconnect boundary (adb) is an aligned 128-byte address [the lower seven bits are zeros (0)]. adbs are the same, regardless of transaction width. to proceed from one adb to the next, a burst transaction requires 16 data phases on a 64-bit bus and 32 data phases on a 32-bit bus. after a burst data transfer starts and the target accepts more than a single data phase, the transaction can only be stopped using one of the following methods:  target or initiator disconnect at an adb  transaction byte count is satisfied  target abort if a burst transaction is disconnected (by the initiator or the target) on an adb, the last byte address transferred is 7fh (modulo 80h). 9.5 dependencies between ad and cbe# pci-x memory, i/o, and configuration spaces are addressable at the byte level as conventional pci mode. bytes appear on byte lanes according to their individual byte address and transfer width, as listed in table 9-2. for burst transactions, the pci-x requester uses the full address bus to indicate the starting byte address (including ad[1:0]) and includes the attribute byte count field. for i/o and memory dword transactions, the pci-x initiator uses the full address bus to indicate the starting address (including ad[1:0]). the attribute byte count field is reserved . the ending address is always the last byte of the dword. note: interrupt acknowledge and special cycle transactions have no address. the cbe bus is reserved and driven high throughout burst transactions ( except memory writes). during the data phases of all dword and memory write transactions, the cbe bus is used as byte enables. table 9-2. byte lanes assignment byte lane byte address ad[2:0] 64-bit transfer 32-bit transfer 000b 0 0 001b 1 1 010b 2 2 011b 3 3 100b 4 0 101b 5 1 110b 6 2 111b 7 3
section 9 pci-x command encoding pci-x bus operation pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 9-5 9 ? pci-x bus operation 9.6 pci-x command encoding pci-x command codes are listed in table 9-3. the initiator must not generate reserved commands and targets should ignore transactions using reserved commands. for all commands ( except dac), the transaction command appears on cbe[3:0]# during the single address phase. for transaction with dacs, cbe[3:0]# contains the dac command in the first address phase and the transaction command in the second address phase. the alias to memory read and write block commands are not generated by the initiators and treated as memory read block and memory write block, respectively, by targets. for 64-bit transactions, cbe[7:4]# contain the transaction command in both address phases. table 9-3. pci-x command encoding cbe[3:0]# pci-x command length byte enable usage 0000b interrupt acknowledge (not supported) dword valid 0001b special cycle (not supported) dword valid 0010b i/o read dword valid 0011b i/o write dword valid 0100b reserved n/a n/a 0101b reserved n/a n/a 0110b memory read dword dword valid 0111b memory write burst valid 1000b alias to memory read block burst reserved / driven high 1001b alias to memory write block burst reserved / driven high 1010b configuration read dword valid 1011b configuration write dword valid 1100b split completion burst reserved / driven high 1101b dac n/a n/a 1110b memory read block burst reserved / driven high 1111b memory write block burst reserved / driven high
section 9 pci-x bus operation attributes pci 6540 data book, version 1.0 9-6 ? 2003 plx technology, inc. all rights reserved. 9.7 attributes the transaction is further defined by additional information included in the attribute phase (always single clock, regardless of the address or data transfer width). the upper buses (ad[63:32] and cbe[7:4]#) of 64-bit devices are reserved and driven high during the attribute phase. pci-x transactions have three attribute formats. the requester attribute format applies to all transactions, except type 0 configuration read and write transactions and split completion transactions. figure 9-1 illustrates the requester attribute bit assignments. the requester id (ad[23:8]) is the combination of the requester bus, device, and function numbers. the sequence id (ad[28:8]) is the combination of the tag and the requester id. table 9-4 lists the requester attribute bit definitions.
section 9 attributes pci-x bus operation pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 9-7 9 ? pci-x bus operation figure 9-1. requester attribute bit assignments 35 32 31 30 29 28 24 23 16 15 11 10 8 7 0 upper byte count r ns ro tag requester bus number requester device number requester function number lower byte count cbe[3:0]# ad[31:0] table 9-4. requester attribute bit definitions bit(s) attribute function cbe[3:0]# ad[7:0] upper byte count lower byte count example : byte count[11:0] bytes 0000_0000_0001b 1 0010_0101_0110b 598 1111_1111_1111b 4095 0000_0000_0000b 4096 indicates the number of bytes the initiator plans to move in the remainder of the sequence. if the transaction is disconnected for any reason and the initiator continues the sequence, the initiator must adjust the byte count contents in the subsequent transactions of the same sequence to be the number of bytes remaining in the sequence. ad[10:8] requester function number contains the requester function number (the function in the configuration address to which the function responds). ad[15:11] requester device number contains the device number assigned to the requester (from the pci-x bridge status register device number bits, pcixbsr[7:3]; pci:f4h). ad[23:16] requester bus number identifies the requester bus number (from the pci-x bridge status register bus number bits, pcixbsr[15:8]; pci:f4h). ad[28:24] tag uniquely identifies up to 32 sequences from a single initiator. the initiator assigns a unique tag to each sequence that begins before the previous one ends. tag identifies the appropriate split completion transaction. ad29 relaxed ordering attribute (ro) devices are allowed to set ad29 to load sequences and must clear it for control and status sequences. split read requesters are unaffected by this bit. ad30 no snoop (ns) if an initiator sets ad30, the initiator guarantees that the locations between the starting and ending address, inclusive, of this sequence are not stored in a system cache.  if a write transaction is disconnected, the initiator must not change this attribute on a subsequent transaction in the same sequence  if an immediate read transaction disconnects, the sequence ends pci 6540 ignores ad30 and forwards it, unmodified, with the transaction. ad31 reserved (r) set to 0 by the requester and ignored by the completer.
section 9 pci-x bus operation burst transactions pci 6540 data book, version 1.0 9-8 ? 2003 plx technology, inc. all rights reserved. 9.8 burst transactions a burst transaction is a transaction that uses one of the following commands:  burst write transactions ? memory write, memory write block, or alias to memory write block  burst read transactions ? memory read block or alias to memory read block commands  split completion burst transactions (may be initiated as 64- or 32-bit) transfer data on one or more data phase, up to that required to satisfy the maximum byte count. burst transactions use the full address bus (including ad[2:0]) to specify the transaction starting byte address. burst transactions can start on one side and end on the other of an adb, a memory page boundary, the first 4 gb memory address boundary and so forth. during burst transaction data phases, the cbe bus is reserved and driven high by the initiator for all transactions ( except memory writes). 9.8.1 burst write and split completion the pci 6540 executes burst write and split completion transactions as immediate transactions, as follows:  as an initiator, the pci 6540 is the command source, address, attribute, and data.  as a target, terminates a burst write transaction with target abort, single data phase disconnect, wait state, data transfer, retry, or disconnect at the next adb.  pci 6540 terminates a split completion transaction with target abort, wait state, or data transfer, retry, or disconnect at the next adb. targets are not allowed to respond with split response.  cbe bus is reserved and driven high after the address phase of all burst writes and split completion transactions ( except memory writes). all bytes between the starting and ending address, inclusive, are included in these transactions.  if the target inserts initial wait states, it must do so in pairs of clocks, and the initiator must toggle between the first and second data patterns until the target begins accepting data. 9.8.2 burst read transactions burst read transactions use the memory read block or alias to memory read block commands. as an initiator, the pci 6540 is the source of the command, address, and attributes (the completer is the source of the data).  as a target, the pci 6540 responds to a burst read transaction with split response, target abort, single data phase disconnect, wait state, data transfer, retry, or disconnect at the next adb.  if the pci 6540 responds (as a target) by signaling single data phase disconnect, data transfer, or disconnect at the next adb, data transfers during the read transaction.  if the pci 6540 responds (as a target) with a split response, no data transfers during the read transaction but is later transferred in one or more split completion transactions. 9.9 dword transactions a pci-x dword transaction uses interrupt acknowledge, special cycle, i/o read, i/o write, configuration read, configuration write, or memory read dword. the pci 6540 considers the following pci-x rules:  dword transactions must be initiated as 32-bit transfers (req64# must be de-asserted and ad[63:32], cbe[7:4]#, and par64 are not used)  dword transactions retain a single data phase and affect more than a single dword  reserved attributes must be set to 0 by the initiator and ignored by the target  byte enables are not valid until two clocks after the attribute phase, and pci-x completer with locations that exhibit read side effects must not start a read operation until the byte enables are valid  interrupt acknowledge has no address, and drives any value on the ad[31:0] bus during the address phase
section 9 device select timing pci-x bus operation pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 9-9 9 ? pci-x bus operation 9.10 device select timing a pci-x target claims transactions by asserting devsel#, using one of the timings listed in table 9-5 (conventional pci mode devsel# timing is listed for reference). 9.11 wait states and target initial latency when initiating a transaction, the pci 6540 (and all pci-x initiators) does not insert wait states. the pci 6540:  asserts irdy# two clocks after the attribute phase and drives write data on the ad bus or prepares to accept read data  after irdy# is asserted, it continues to assert irdy# until the transaction ends  when responding to a transaction, it (and all pci-x targets) inserts wait states  inserts wait states (in pairs of clock for burst write and split completion transactions) only on the initial data phase  for transactions of more than one data phase, it does not signal a wait state the target initial latency is measured from the clock in which the initiator asserts frame#, to the clock in which the target signals something other than a wait state. table 9-6 delineates the target initial latency for all devsel# timing combinations, number of address phases, and numbers of wait states. table 9-5. devsel# timing decode speed after address phase 1 1. decode speeds are measured from the second address phase in the case of dac. conventional pci pci-x 1 clock fast n/a 2 clocks medium decode a 3 clocks slow decode b 4 clocks sub decode c 5 clocks n/a n/a 6 clocks n/a sub 2 2. if no target asserts devsel# within the sub decode time, the initiator ends the transaction as a master abort. after asserting devsel#, a target must complete the transaction with one or more data phases by signaling split response, target abort, single data phase disconnect, wait state, data transfer, retry, or disconnect at the next adb. the pci 6540 uses decode b timing.
section 9 pci-x bus operation split transactions pci 6540 data book, version 1.0 9-10 ? 2003 plx technology, inc. all rights reserved. the maximum number of initial wait states a pci-x target is allowed to insert depends upon how the target terminates the transaction.  target must signal split response, target abort, or retry within eight clocks of frame# assertion  target must signal single data phase disconnect, data transfer, or disconnect at the next adb within 16 clocks of frame# assertion  if large numbers of wait states are required, executing the transaction as a split transaction provides more efficient bus use  on a read transaction, the target is allowed to insert any number of initial wait states up (need not be in pairs for read transactions) to the maximum number 9.12 split transactions targets must not assume that the pci 6540 (as an initiator) repeats a transaction terminated with retry. split transactions improve bus efficiency for transactions accessing targets that exhibit long latency. split transactions (in pci-x mode) replace delayed transactions (in conventional pci mode). a split transaction consists of at least two separate bus transactions ? a requester-initiated split request, and one or more completer-initiated split completions. the following is the sequence of events that occurs for non-memory write transactions in which the initiator and target reside on opposite sides of the pci 6540 bridge. these transactions are memory read block, alias to memory read block, memory read dword, i/o read, i/o write, configuration read, or configuration write command. 1. split request (transaction terminated with a split response) occurs. 2. after signaling a split response, the pci 6540 forwards the transaction to the completer side. 3. completer terminates the transaction after immediate completion (abort) or split completion cycle. 4. pci 6540 initiates a split completion transaction to send the received read data or a split completion message to the requester. 5. pci 6540 becomes the initiator of the split completion transaction, and the requester becomes the target (the requester and pci 6540 switch roles). split completions for the same sequence must be initiated in address order. when the pci 6540 terminates a read transaction with split response, the pci 6540 transfers the entire requested byte count as a split completion. the pci 6540 provides four adqs of buffer space for the split completion. table 9-6. target initial latency wait states sac dac devsel# timing devsel# timing a b c sub a b c sub 034574568 145685679 2567967810 36781078911 4 7 8 9 11 8 9 10 12 5 8 910129101113 6 9 10 11 13 10 11 12 14 7 1011121411121315 8 1112131512131416 9 12131416131415n/a 10 13 14 15 n/a 14 15 16 n/a 11 14 15 16 n/a 15 16 n/a n/a 12 15 16 n/a n/a 16 n/a n/a n/a 13 16 n/a n/a n/a n/a n/a n/a n/a
section 9 split transactions pci-x bus operation pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 9-11 9 ? pci-x bus operation 9.12.1 split completion transaction a split completion transaction is a burst transaction (includes the byte count in the attribute phase) that uses the split completion command. the following are the characteristics of split completion cycles:  cbe bus is reserved and driven high during all data phases  split completion transactions can be initiated as 64- or 32-bit transfers  target of a split completion is the requester that initiated the split request  completer stores the requester id (bus, device, and function numbers) from the split request attribute phase  requester id becomes part of the split completion address driven on the ad bus during the split completion address phase  requester uses the requester id to recognize split completions that correspond to its split request  split completion attributes carry information about the completer rather than the requester  completer adjusts the address and byte count (to the portion remaining in the sequence) each time a split completion resumes  completer can disconnect a split completion transaction only on an adb  completer must maintain the split completion data in address order  if the split request is a dword transaction, the lower address bits in the split completion address are set to 0h and the byte count bit in the completer attributes is set to 4h  if the split request is a write transaction, a split completion message is driven on ad[31:0], regardless of the byte enables asserted in the split request  if the split request is a read transaction, data is driven on ad[31:0] during the split completion data phase (only byte lanes corresponding to the byte enables in the split request contain valid data) 9.12.2 immediate completion by the completer when the pci 6540 forwards a split request, it expects that the completer immediately completes the transaction ( for example , executes the transaction as an immediate transaction rather than a split transaction) or for the transaction to end with a master abort. if the completer immediately completes the transaction, the pci 6540 creates a split completion transaction (split completion address and completer attributes) to return to the requester. split completions are created in the following way:  pci 6540 creates the split completion address from the original request in the same way as a completer  for the completer attributes, the pci 6540 creates the completer id for the bus in which the immediate completion occurred  if the immediate completion occurred on the primary bus, the pci 6540 supplies the bus, device, and function numbers from the pci-x bridge status register (pcixbsr[15:0]; pci:f4h)  if the immediate completion occurred on the secondary bus, the pci 6540 supplies the bus number from the secondary bus number register (pcisbno; pci:19h) and sets the device and function number bits to 0 (pcixbsr[7:0]=0h; pci:f4h) if the split request is a write transaction and the completer immediately completes it, the pci 6540 also creates a split completion message for the split completion data phase. 9.12.3 split completion address the split completion address is driven on the ad bus during the address phase of split completion transactions. (refer to figure 9-2.) the completer copies all information from the split request address and attribute phases. table 9-7 lists the split completion address bit definitions.
section 9 pci-x bus operation split transactions pci 6540 data book, version 1.0 9-12 ? 2003 plx technology, inc. all rights reserved. figure 9-2. split completion address 3 0 31 30 29 28 24 23 16 15 11 10 8 7 6 0 bus command r ro tag requester bus number requester device number requester function number r lower address cbe[3:0]# ad[31:0] table 9-7. split completion address bit definitions bit(s) attribute function ad[6:0] lower address pci 6540 uses this information when forwarding a split completion to another bus operating in pci-x mode, to determine where the split completion starts relative to an adb. completer copies ad[6:0] from the least significant seven bits of the split request address, regardless of the command used by the split request, if:  split request for this sequence was a burst read  first split completion of the sequence  split completion is not a split completion message ad[6:0] are set to 0h when the sequence resumes if:  split completion is disconnected on an adb  split request was a dword transaction  split request was a split completion message ad7 reserved (r) set to 0 by the target initiator. ad[10:8] requester function number completer copies ad[10:8] from the corresponding bits of the requester attributes. the requester uses this information to identify the appropriate split completions. ad[15:11] requester device number completer copies ad[15:11] from the corresponding bits of the requester attributes. the requester uses this information to identify the appropriate split completions. ad[23:16] requester bus number completer copies ad[23:16] from the corresponding bits of the requester attributes. the requester uses this information to identify the appropriate split completions. pci 6540 uses this field to identify transactions to forward. ad[28:24] tag completer copies ad[28:24] from the corresponding bits of the requester attributes. the requester uses this information to identify the appropriate split completions. ad29 relaxed ordering attribute (ro) completer optionally copies ad29 from the corresponding bit of the requester attributes bridges throughout the system, using this bit to influence transaction ordering. ad[31:30] reserved (r) set to 00b by the requester and ignored by the completer. cbe[3:0]# bus command contains the split completion command.
section 9 split transactions pci-x bus operation pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 9-13 9 ? pci-x bus operation 9.12.4 completer attributes the attribute phase of a split completion contains the completer attributes (a combination of the completer id and information about the sequence stored from the split request). (refer to figure 9-3 and table 9-7.) figure 9-3. completer attribute bit assignments 35 32 31 30 29 28 24 23 16 15 11 10 8 7 0 upper byte count bcm sce scm r completer bus number completer device number completer function number lower byte count cbe[3:0]# ad[31:0] table 9-8. completer attribute bit definitions bit(s) attribute function cbe[3:0]# ad[7:0] upper byte count lower byte count example : byte count[11:0] bytes 0000_0000_0001b 1 0010_0101_0110b 598 1111_1111_1111b 4095 0000_0000_0000b 4096 indicates the number of bytes the initiator plans to move in this split completion. if the transaction is disconnected for any reason and the initiator continues the sequence, the initiator must adjust the byte count field contents in the subsequent transactions of the same sequence to be the number of bytes remaining in this sequence. if the split completion is a split completion message, the completer sets the byte count to four (0000_0000_0100b). ad[10:8] completer function number contains the function number (function in the configuration address to which the function responds) of the completer within the device. ad[15:11] completer device number contains the device number assigned to the completer (from the pci-x bridge status register device number bits, pcixbsr[7:3]; pci:f4h). ad[23:16] completer bus number identifies the requester ? s bus number (from the pci-x bridge status register bus number bits, pcixbsr[15:8]; pci:f4h). ad[28:24] reserved (r) set to 0h by the requester and ignored by the completer. ad29 split completion message (scm) set to 0 by the completer if the split completion contains read data. set to 1 by the completer if the split completion contains a split completion message. ad30 split completion error (sce) set to 0 by the completer if the transaction is a split completion message that is an error message. ad31 byte count modified (bcm) set to 1 by the completer if the byte count bit for this split completion contains a number smaller than the full remaining transaction byte count (to disconnect the split completion at the first adb). set to 0 by the completer if the byte count bit contains the full remaining byte count of the split request, or if the split completion is a split completion message. note: the bcm bit is used only for split completions resulting from burst read transactions (memory read block and alias to memory read block) and is set to 0 for split completions resulting from all other commands.
section 9 pci-x bus operation split transactions pci 6540 data book, version 1.0 9-14 ? 2003 plx technology, inc. all rights reserved. 9.12.5 accepting split completions requirement the pci 6540 accepts all split completions resulting from its own split requests. the pci 6540 asserts devsel# on all split completions in which the sequence id (requester id and tag) corresponds to a pci 6540-issued split request. if the split completion requester id is corrupt, it is possible that the id matches that of an actual system device. the pci 6540 does not assert devsel# ( for example , ignores the corrupt transaction) if the requester id matches that of the pci 6540, but the tag does not match any outstanding requests from the pci 6540. when the pci 6540 asserts devsel# for a split completion, it accepts the entire byte count requested without signaling split response or single data phase disconnect. if the pci 6540 is executing one split transaction from one interface (issued split response on that interface), the pci 6540 terminates with retry unposted transactions on that interface until the previous split transaction completes. 9.12.6 split completion messages split completion transactions include a message if the completer attributes scm bit is set (ad29=1). a split completion message is a single dword burst transaction. the remaining lower address bits in the split completion address are set to 0 and the completer attributes byte count is set to 4h for all split completion messages. (refer to table 9-9.) the cbe bus is reserved and driven high during the data phase of a split completion message. the following illustrates the functions of split completion messages:  notifies the requester when a split write request (i/o or configuration) has completed.  indicates error conditions in which delivery of data for a read request or execution of a write request is not possible.  terminates a sequence, regardless of the amount of bytes remaining to be sent.  split completion message byte count bit indicates the number of bytes that were not sent for this sequence (if the split request was a burst read). the remaining lower address bits indicate the lower seven bits of the starting address of the remainder of the sequence. (refer to figure 9-4, table 9-9 and table 9-10 for further details.)
section 9 split transactions pci-x bus operation pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 9-15 9 ? pci-x bus operation figure 9-4. split completion message attribute bit assignments 31 28 27 20 19 18 12 11 8 7 0 message class message index r remaining lower address upper remaining byte count lower remaining byte count ad[31:0] table 9-9. split completion message bit definitions bit(s) attribute function ad[11:0] upper and lower remaining byte count if the split request was a burst memory read, the completer sets this field to the number of bytes of read data that were not sent. if the split request was a dword transaction, the completer sets ad[11:0] to 4h. ad[18:12] remaining lower address if the split request was a burst memory read, this field contains the least significant seven bits of the address of the first byte of read data that was not sent. if the split request was a dword transaction, the completer sets ad[18:12] to 0h. ad19 reserved (r) set to 0 by the requester and ignored by the completer. ad[27:20] message index identifies the type of message within the message class. (refer to table 9-10 for further details.) ad[31:28] message class split completion messages classes. (refer to table 9-10 for further details.) class values: 0000b = write completion 0001b = pci-x bridge error 0010b = completer error 0011b ? 1111b = reserved note: the write completion class is used for split write completion messages. the remaining lower address bits are set to 0 (ad[18:12]=0h) and the upper and lower remaining byte count bits are set to 4h (ad[11:0]=4h) in the data phase of this split completion message.
section 9 pci-x bus operation split transactions pci 6540 data book, version 1.0 9-16 ? 2003 plx technology, inc. all rights reserved. table 9-10. pci 6540 error message indices index ad[27:20] message class 0 (ad[31:28] = 0000b) message class 1 (ad[31:28] = 0010b) message class 2 (ad[31:28] = 0010b) 00h normal write completion master abort. pci 6540 encountered a master abort on the destination bus. byte count out of range 1 1. the completer uses this message if the sum of the split request address and the byte count exceed the completer address range (over device boundary). the completer initiates split completion transactions with read data up to the device boundary. 01h reserved target abort. pci 6540 encountered a target abort on the destination bus. split write data parity error 2 2. the completer sends this message when a dword write transaction is terminated with split response and a data parity error detected. 02h reserved write data parity error. pci 6540 encountered a data parity error on an unposted write transaction on the destination bus. device-specific error 3 3. the completer uses this message if it encounters an error that prevents execution of the split request, and the error is not indicated by one of the other error messages. the pci 6540 encodes specific error or diagnostic information from the lower four bits of this index. 03h ? ffh reserved
section 9 pci-x mode transaction termination pci-x bus operation pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 9-17 9 ? pci-x bus operation 9.13 pci-x mode transaction termination the pci 6540 terminates a transaction using the following methods:  initiator termination ? byte count disconnection or satisfaction  master abort termination ? target termination, disconnection, or retry; split response; or target abort termination 9.13.1 pci 6540 initiator termination 9.13.1.1 byte count disconnection or satisfaction pci 6540 disconnection on an adb (before the byte count is satisfied), and pci 6540 termination at the end of the byte count, appear the same on the bus.  pci 6540 termination in less than four data phases occurs only if the starting address, byte count, and bus data width are such that the transaction has fewer than four data phases  when the pci 6540 intends to disconnect a transaction on the first adb, and the bus data width is such that the starting address is less than four data phases from the adb, the pci 6540 adjusts the byte count to terminate on that adb 9.13.1.2 pci 6540 master abort termination as an initiator, the pci 6540 de-asserts frame# and irdy# eight clocks after the address phase(s) if no target asserts devsel# within six clocks after the address phase(s). 9.13.2 pci 6540 target termination as a target, after the pci 6540 asserts devsel# in the target response phase, the pci 6540 completes the transaction with one or more data phases. on each clock after the target response phase, the pci 6540 signals its intention with a combination of target control signals (devsel#, stop#, and trdy#). a data phase ends each time the pci 6540 signals anything other than wait state. table 9-11 delineates the alternatives for data phase signaling. after the pci 6540 signals a data transfer on one data phase, the transaction continues until the byte count is satisfied or the initiator terminates the transaction. (when the pci 6540 signals a split response or retry, the transaction immediately terminates, although the byte count is not satisfied.) the transaction immediately terminates if the pci 6540 signals a split response or retry. following the transaction termination, the pci 6540 de-asserts devsel#, stop#, and trdy# one clock after the last data phase (if these signals are not currently de-asserted).
section 9 pci-x bus operation pci-x mode transaction termination pci 6540 data book, version 1.0 9-18 ? 2003 plx technology, inc. all rights reserved. table 9-11. pci 6540 data phase signaling devsel# stop# trdy# data phase signaling data transfer transaction status de-asserted de-asserted de-asserted no response: master abort 1 1. pci 6540 does not allow this after asserting devsel#. no terminates de-asserted de-asserted asserted split response yes/no 2 2. no data transfer on a split response for a read transaction. the target latches data on a split response for a write transaction. in both cases, the transaction is not complete until the requester receives the split completion. terminates de-asserted asserted de-asserted target abort no terminates de-asserted asserted asserted single data phase disconnect yes terminates asserted de-asserted de-asserted wait state 3 3. wait states are allowed only on the first data phase. no continues asserted de-asserted asserted data transfer yes continues asserted asserted de-asserted retry no terminates asserted asserted asserted disconnect at next adb yes continues to an adb
section 9 pci-x mode bus and data transfer width pci-x bus operation pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 9-19 9 ? pci-x bus operation 9.13.2.1 pci 6540 disconnects at next adb the pci 6540 signals a transaction disconnection at the next adb by asserting trdy#, stop#, and devsel# on any data phase of the transaction. after signaling disconnect at the next adb, the pci 6540 can signal only target abort on all subsequent data phases until the transaction ends. if the pci 6540 signals disconnect at the next adb:  four or more data phases before an adb, the initiator disconnects the transaction on that adb  after signaling a data transfer on the first data phase, and the transaction starting address is less than four data phases from an adb, the transaction crosses that adb and continues to the next adb 9.13.2.2 pci 6540 retry termination the pci 6540 indicates that it is temporarily unable to complete the transaction by signaling retry (asserting stop# and devsel# and holding trdy# de-asserted on the first data phase) under the following conditions:  initialization time after rising edge of rstin# did not elapse  buffers for accepting memory write or split completion transactions are currently full with previous data the pci 6540 discards all state information related to a transaction terminated with retry. 9.13.2.3 pci 6540 split response termination the pci 6540 signals a split response if it has enqueued the transaction as a split request by asserting trdy#, de-asserting devsel#, and holding stop# de-asserted on the first data phase of the transaction. the pci 6540 drives all ad bus bits high during the clock in which it signals a split response of a read transaction. 9.14 pci-x mode bus and data transfer width the pci 6540 determines the bus data width to which it is attached by the req64# state at the rising edge of rstin#. pci-x devices are allowed to implement a 64- or 32-bit interface. addresses are driven in one or two clocks, depending on whether the transaction uses a memory command and the address is below the first 4-gb boundary. attributes are always driven in a single clock for 64- and 32-bit devices. as in conventional pci mode, the width of a pci-x data transfer is negotiated between the initiator and the target on each transaction, using req64# and ack64#. attributes:  pci 6540 is capable of generating addresses greater than 4 gb (when initiating memory transactions)  all pci 6540 prefetchable memory range registers are 64-bit registers  split completions always have a single address phase for 64- and 32-bit initiators when executing a transaction with a dac for a 64-bit transaction, the pci 6540 drives the entire address (lower address on ad[31:0] and upper address on ad[63:32]) and both commands (dac on cbe[3:0]# and transaction command on cbe[7:4]#) during the initial address phase. on the following clock, the pci 6540 drives the upper address on ad[31:0] (and ad[63:32]) and the transaction command on cbe[3:0]# (and cbe[7:4]#).
section 9 pci-x bus operation connecting conventional pci and pci-x interfaces pci 6540 data book, version 1.0 9-20 ? 2003 plx technology, inc. all rights reserved. the following requirements are applied to all pci-x devices:  pci-x devices support a status bit, indicating whether they are a 64- or 32-bit device.  only burst transactions use 64-bit transfers. dword transactions use 32-bit transfers.  adbs are unaffected by the data transfer width. a 32-bit device has twice as many data phases between two adbs.  ad2 is 0 or 1, depending on the transaction starting byte address. if ad2 of the starting byte address is 1 (the starting address is in the upper 32 bits of the bus), the 64-bit initiator must drive the data on ad[63:0] and the byte enables on cbe[7:0]# of the first data phase.  ad[63:32] and cbe[7:4]# are driven high during the transaction attribute phase from a 64-bit initiator.  if the target concurrently asserts ack64# and devsel# (a 64-bit target), and the target inserts wait states, the initiator must toggle between the first and second qword data phases on ad[63:0] and byte enables on cbe[7:0]#. if the transaction starts on an odd dword, that dword and its byte enables must be copied to the lower half of the bus each time the first data phase repeats.  if the target does not assert ack64# (and the target inserts wait states), the initiator must toggle between the first and second dword data phases of the transaction on ad[31:0] and byte enables on cbe[3:0]#. 9.15 connecting conventional pci and pci-x interfaces this section provides the pci 6540 translation of commands and protocol between conventional pci and pci-x interfaces. 9.15.1 conventional pci requester, pci-x completer table 9-12 summarizes the command translation requirements from a conventional pci transaction to a pci-x transaction. when the pci 6540 prefetches more than a single dword, it uses the memory read block command. if a memory read block command is used, the byte count is controlled by the pci 6540 prefetch algorithm. the pci 6540 buffer memory writes transactions from its conventional pci interface, and counts the number of bytes to be forwarded to the pci-x interface. when the pci 6540 forwards a transaction other than a memory write transaction:  pci 6540 terminates the transaction on the originating bus with retry, stored the address, commands, and so forth, and enqueues a delayed request  after the pci 6540 finishes the request on the destination bus, it enqueues a delayed completion  pci 6540 follows delayed transaction rules on the requester side (conventional pci bus) and split transaction rules on the completer side (pci-x bus) table 9-12. conventional pci-to-pci-x command translation conventional pci command pci-x command i/o read i/o read i/o write i/o write configuration read configuration read configuration write configuration write memory read memory read dword or memory read block memory read line memory read block memory read multiple memory read block memory write memory write or memory write block memory write and invalidate memory write block
section 9 connecting conventional pci and pci-x interfaces pci-x bus operation pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 9-21 9 ? pci-x bus operation 9.15.2 pci-x requester, conventional pci completer table 9-13 summarizes the command translation requirements from a pci-x transaction to a conventional pci transaction. the pci 6540 translates a pci-x memory read block command into one of three conventional pci memory read commands, based on the byte count and starting address. if the:  starting address and byte count are such that only one or fewer dwords are being read, the conventional pci transaction uses the memory read command  pci-x transaction reads more than one dword, but does not cross a cache line boundary, the conventional pci transaction uses the memory read line commands  pci-x transaction crosses a cache line boundary, the conventional pci transaction uses the memory read multiple command if pci-x memory write block command (or memory write command) byte enables are set and the command starts and ends on a cache line boundary, the pci 6540 translates the command to the memory write command on the conventional pci interface. when forwarding a transaction other than a memory write, the pci 6540:  terminates the transaction on the originating bus with split response. after executing the transaction on the conventional pci interface, the pci 6540 creates the split completion to return to the pci-x requester.  follows split transaction rules on the requester side (pci-x bus) and delayed transaction rules on the completer side (conventional pci bus). table 9-13. pci-x-to-conventional pci command translation pci-x command conventional pci command i/o read i/o read i/o write i/o write configuration read configuration read configuration write configuration write memory read dword memory read memory read block memory read, memory read line, or memory read multiple memory write memory write or memory write and invalidate memory write block memory write or memory write and invalidate

pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 10-1 10 ? address decoding 10 address decoding this section describes address decoding, including address ranges, memory address decoding, isa mode, vga and private device support, and address translation. 10.1 overview the pci 6540 uses three address ranges that control i/o and memory transaction forwarding across the bridge. these address ranges are defined by base and limit address registers in configuration space. 10.2 address ranges the pci 6540 uses the following address ranges to determine which i/o and memory transactions are forwarded from the primary-to-secondary pci bus, and from the secondary-to-primary bus:  one 32-bit i/o address range  one 32-bit memory-mapped i/o (non-prefetchable memory) range  one 64-bit prefetchable memory address range transaction addresses falling within these ranges are forwarded downstream from the primary-to-secondary pci bus. transaction addresses falling outside these ranges are forwarded upstream from the secondary- to-primary pci bus. 10.2.1 i/o address decoding the pci 6540 uses the following mechanisms, defined in configuration space, to specify the i/o address space for downstream and upstream forwarding:  i/o base and limit address registers (base ? pciiobar; pci:1ch and pciiobaru16; pci:30h, limit ? pciiolmt; pci:1dh and pciiolmtu16; pci:32h)  isa enable bit (transparent mode ? bcntrl[2]; pci:3eh, non-transparent mode ? bcntrl[2]; pci:42h)  vga enable bit (transparent mode ? bcntrl[3]; pci:3eh, non-transparent mode ? bcntrl[3]; pci:42h)  vga palette snoop enable bit (transparent mode ? pcicr[5]; pci:04h, non-transparent mode ? pcicr[5]; primary pci:04h, secondary pci:44h) to enable i/o transaction downstream forwarding, the command register i/o space enable bit must be set (transparent mode ? pcicr[0]=1; pci:04h, non- transparent mode ? pcicr[0]=1; primary pci:04h, secondary pci:44h). if the i/o space enable bit is not set, i/o transactions initiated on the primary bus are ignored. to enable i/o transaction upstream forwarding, the command register master enable bit must be set (transparent mode ? pcicr[2]=1; pci:04h, non-transparent mode ? pcicr[2]=1; primary pci:04h, secondary pci:44h). if the master enable bit is not set, the pci 6540 ignores i/o and memory transactions initiated on the secondary bus. setting the master enable bit also allows upstream forwarding of memory transactions. caution: if any configuration state affecting i/o transaction forwarding is changed by a configuration write operation on the primary bus when there are ongoing i/o transactions on the secondary bus, the pci 6540 response to the secondary bus i/o transactions is not predictable. configure the i/o base and limit address registers, and isa enable, vga enable, and vga palette snoop enable bits before setting the i/o space enable and master enable bits, and subsequently change these registers only when the primary and secondary pci buses are idle. 10.2.1.1 i/o base and limit address registers the pci 6540 implements one set of i/o base and limit address registers in configuration space that define an i/o address range for downstream forwarding. the pci 6540 supports 32-bit i/o addressing, which allows i/o addresses downstream of the pci 6540 to be mapped anywhere in a 4-gb i/o address space. i/o transactions with addresses that fall inside the range defined by the i/o base and limit registers are forwarded downstream from the primary-to-secondary pci bus. i/o transactions with addresses that fall outside this range are forwarded upstream from the secondary-to-primary pci bus. the i/o range can be turned off by setting the i/o base address to a value greater than that of the i/o limit address. when the i/o range is turned off, all i/o transactions are forwarded upstream (no i/o transactions are forwarded downstream).
section 10 address decoding memory address decoding pci 6540 data book, version 1.0 10-2 ? 2003 plx technology, inc. all rights reserved. the i/o base register consists of an 8-bit field (pciiobar; pci:1ch) and a 16-bit field (pciiobaru16; pci:30h). the upper four bits of the 8-bit field define bits [15:12] of the i/o base address. the lower four read-only bits are hardcoded to 0001b to indicate that the pci 6540 supports 32-bit i/o addressing. bits [11:0] of the base address are assumed to be 0h, which naturally aligns the base address to a 4-kb boundary with a minimum granularity of 4 kb. the 16 bits contained in the i/o base upper 16 bits register (pciiobaru16; pci:30h) define ad[31:16] of the i/o base address. all 16 bits are read/write. after a primary bus or chip reset, the i/o base address value is initialized to 0000_0000h. the i/o limit register consists of an 8-bit field (pciiolmt; pci:1dh) and a 16-bit field (pciiolmtu16; pci:32h). the upper four bits of the 8-bit field define bits [15:12] of the i/o limit address. the lower four read-only bits are hardcoded to 0001b to indicate that 32-bit i/o addressing is supported. bits [11:0] of the limit address are assumed to be fffh, which naturally aligns the limit address to the top of a 4-kb i/o address block. the 16 bits contained in the i/o limit upper 16 bits register (pciiolmtu16; pci:32h) define ad[31:16] of the i/o limit address. all 16 bits are read/write. after a primary bus or chip reset, the i/o limit address value is reset to 0000_ 0fffh. note: write these registers with their appropriate values before setting the command register master or i/o space enable bit (transparent mode ? pcicr[2 or 0]=1; pci:04h, non-transparent mode ? pcicr[2 or 0]=1; primary pci:04h, secondary pci:44h, respectively). 10.3 memory address decoding the pci 6540 has three mechanisms for defining memory address ranges for forwarding of memory transactions:  memory-mapped i/o base and limit address registers (pcimbar; pci:20h and pcimlmt; pci:22h, respectively)  prefetchable memory base and limit address registers (base ? pcipmbar; pci:24h and pcipmbaru32; pci:28h, limit ? pcipmlmt; pci:26h and pcipmlmtu32; pci:26h)  vga mode (transparent mode ? bcntrl[3]=1; pci:3eh, (non-transparent mode ? bcntrl[3]=1; pci:42h shadow register) this subsection describes the first two mechanisms. vga mode is described in section 10.5.1. to enable downstream forwarding of memory transactions, the command register memory space enable bit must be set (transparent mode ? pcicr[1]=1; pci:04h, non-transparent mode ? pcicr[1]=1; primary pci:04h, secondary pci:44h). to enable upstream forwarding of memory transactions, the command register master enable bit must be set (transparent mode ? pcicr[2]=1; pci:04h, non-transparent mode ? pcicr[2]=1; primary pci:04h, secondary pci:44h). setting the master enable bit also enables upstream forwarding of i/o transactions. caution: if any configuration state affecting memory transaction forwarding is changed by a configuration write operation on the primary bus when there are ongoing memory transactions on the secondary bus, response to the secondary bus memory transactions is not predictable. configure the memory-mapped i/o base and limit address registers, prefetchable memory base and limit address registers, and vga enable bit before setting the memory space enable and master enable bits, and subsequently change these registers only when the primary and secondary pci buses are idle.
section 10 memory address decoding address decoding pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 10-3 10 ? address decoding 10.3.1 memory-mapped i/o base and limit address registers memory-mapped i/o is also referred to as non-prefetchable memory. the memory-mapped i/o base and limit address registers define an address range that the pci 6540 uses to determine when to forward memory commands. the pci 6540 forwards a memory transaction from the primary-to-secondary interface if the transaction address falls within the memory-mapped i/o address range. the pci 6540 ignores memory transactions initiated on the secondary interface that fall into this address range. transactions that fall outside this address range are ignored on the primary interface and forwarded upstream from the secondary interface (provided that the transactions do not fall into the prefetchable memory range, or are not forwarded downstream by the vga mechanism). the memory-mapped i/o address range supports only 32-bit addressing. p-to-p bridge r1.1 does not provide for 64-bit addressing in the memory-mapped i/o space. the memory-mapped i/o address range has a granularity and alignment of 1 mb and a maximum range of 4 gb. the memory-mapped i/o address range is defined by a 16-bit memory-mapped i/o base address register (pcimbar; pci:20h) and a 16-bit memory- mapped i/o limit address register (pcimlmt; pci:22h). the upper 12 bits of each of these registers correspond to bits [31:20] of the memory address. the lower four bits are hardcoded to 0h. the lower 20 bits of the memory-mapped i/o base address are assumed to be 0h, which results in a natural alignment to a 1-mb boundary. the lower 20 bits of the memory- mapped i/o limit address are assumed to be f_ffffh, which results in an alignment to the top of a 1-mb block. note: write these registers with their appropriate values before setting the command register memory space enable or master enable bit. to turn off the memory-mapped i/o address range, write the memory-mapped i/o base address register with a value greater than that of the memory-mapped i/o limit address register. 10.3.1.1 prefetchable memory base and limit address registers locations accessed in the prefetchable memory address range must have true memory-like behavior and not exhibit side effects when read ( that is , extra reads to a prefetchable memory location must have no side effects). the pci 6540 prefetches for all types of memory read commands in this address space. the pci 6540 prefetchable memory base and limit address registers define an address range that the pci 6540 uses to determine when to forward memory transactions. the pci 6540 forwards a memory transaction from the primary-to-secondary interface, if the transaction address falls within the prefetchable memory address range. the pci 6540 ignores memory transactions initiated on the secondary interface that fall into this address range. the pci 6540 does not respond to transactions that fall outside this address range on the primary interface and forwards those transactions upstream from the secondary interface (provided that the transactions do not fall into the memory-mapped i/o address range, or are not forwarded by the vga mechanism). the pci 6540 prefetchable memory range supports 64-bit addressing and provides additional registers to define the upper 32 bits of the prefetchable memory base and limit addresses. for address comparison, a single address cycle (sac; 32-bit address) prefetchable memory transaction is treated as a 64-bit address transaction, where the upper 32 bits of the address are equal to 0h. this upper 32-bit value of 0h is compared to the prefetchable memory base and limit address upper 32 bits registers. the prefetchable memory base address upper 32 bits register must be 0h to pass sac transactions downstream. the prefetchable memory address range is defined by a 16-bit prefetchable memory base address register (pcipmbar; pci:24h) and a 16-bit prefetchable memory limit address register (pcipmlmt; pci:26h). the upper 12 bits of each of these registers correspond to bits [31:20] of the memory address. the lower four read-only bits are hardcoded to 1h, indicating 64-bit address support. the lower 20 bits of the prefetchable memory base address are assumed to be 0h, which results in a natural alignment to a 1-mb boundary. the lower 20 bits of the prefetchable
section 10 address decoding isa mode pci 6540 data book, version 1.0 10-4 ? 2003 plx technology, inc. all rights reserved. memory limit address are assumed to be f_ffffh, which results in an alignment to the top of a 1-mb block. the maximum memory address range is 4 gb for 32-bit addressing, and 2 64 bytes for 64-bit addressing. note: write these registers with their appropriate values before setting the command register memory space enable or master enable bit. to turn off the prefetchable memory address range, write the prefetchable memory base address register with a value greater than that of the prefetchable memory limit address register. the entire base value must be greater than the entire limit value ( that is , the upper 32 bits must be considered). therefore, to disable the address range, the upper 32 bits registers can both be set to the same value, while the lower base register is set to a value greater than that of the lower limit register; otherwise, the upper 32-bit base must be greater than the upper 32-bit limit. 10.4 isa mode the pci 6540 supports isa mode by providing an isa enable bit in the bridge control register in configuration space (transparent mode ? bcntrl[2]=1; pci:3eh, non-transparent mode ? bcntrl[2]=1; pci:42h shadow register). isa mode modifies the pci 6540 response inside the i/o address range to support mapping of i/o space in the presence of an isa bus in the system. this bit only affects the pci 6540 response when the following conditions are met:  transaction falls inside the address range defined by the i/o base and limit address registers, and  address also falls inside the first 64 kb of i/o space (address bits [31:16] are 0h) when the isa enable bit is set, the pci 6540 does not forward downstream i/o transactions addressing the upper 768 bytes of each aligned 1 kb block. only those transactions addressing the lower 256 bytes of an aligned 1 kb block inside the base and limit i/o address range are forwarded downstream. transactions above the 64-kb i/o address boundary are forwarded, as defined by the address range in the i/o base and limit registers. additionally, if the isa enable bit is set, the pci 6540 forwards upstream those i/o transactions addressing the upper 768 bytes of each aligned 1 kb block within the first 64 kb of i/o space. the command configuration register master enable bit must also be set (transparent mode ? pcicr[2]=1; pci:04h, non- transparent mode ? pcicr[2]=1; primary pci:04h, secondary pci:44h) to enable upstream forwarding. all other i/o transactions initiated on the secondary bus are forwarded upstream if the transactions fall outside the i/o address range. when the isa enable bit is set, devices downstream of the pci 6540 can have i/o space mapped into the first 256 bytes of each 1 kb segment below the 64-kb boundary, or anywhere in i/o space above the 64-kb boundary. 10.5 vga support the pci 6540 provides two modes for vga support:  vga mode, supporting vga-compatible addressing  vga snoop mode, supporting vga palette forwarding 10.5.1 vga mode when a vga-compatible device exists downstream from the pci 6540, enable vga mode by setting the bridge control register vga enable bit (transparent mode ? bcntrl[3]=1; pci:3eh, non-transparent mode ? bcntrl[3]=1; pci:42h shadow register). when operating in vga mode, the pci 6540 forwards downstream those transactions that address the vga frame buffer memory and vga i/o registers, regardless of the i/o base and limit address register values. the pci 6540 ignores transactions initiated on the secondary interface addressing these locations. the vga frame buffer resides in the memory address range ? 000a_0000h to 000b_ffffh. read transactions to frame buffer memory are treated as non-prefetchable. the pci 6540 requests only a single data transfer from the target, and read byte enable bits are forwarded to the target bus. the vga i/o addresses consist of i/o addresses 3b0h to 3bbh and 3c0h to 3dfh.
section 10 private device support address decoding pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 10-5 10 ? address decoding these i/o addresses are aliased every 1 kb throughout the first 64 kb of i/o space [ that is , address bits [15:10] are not decoded and can be any value, while address bits [31:16] must be all zeros (0)]. vga bios addresses starting at c_0000h are not decoded in vga mode. 10.5.2 vga snoop mode the pci 6540 provides vga snoop mode, allowing for vga palette write transactions to be forwarded downstream. this mode is used when a graphics device downstream from the pci 6540 needs to snoop or respond to vga palette write transactions. to enable the mode, set the command register vga palette snoop enable bit (transparent mode ? pcicr[5]; pci:04h, non-transparent mode ? pcicr[5]; primary pci:04h, secondary pci:44h). the pci 6540 claims vga palette write transactions by asserting devsel# in vga snoop mode. when the vga palette snoop enable bit is set, the pci 6540 forwards downstream transactions with i/o addresses 3c6h, 3c8h, and 3c9h. these addresses are also forwarded as part of the previously described vga compatibility mode. again, address bits [15:10] are not decoded, while address bits [31:16] must be equal to 0 ( that is , these addresses are aliased every 1 kb throughout the first 64 kb of i/o space). note: if both the vga enable and vga palette snoop enable bits are set, the pci 6540 behaves as if only the vga enable bit is set. 10.6 private device support in transparent mode, the pci 6540 can support pci devices that are not visible to primary port hosts or masters. these devices are referred to as private devices and occupy private memory space. by pulling up the prv_dev input pin to 1, the pci 6540 enables use of private memory space at power-up. the private memory range must be setup by driver software. the pci 6540 does not respond to accesses to this private memory range on the primary or secondary port. when prv_dev=1, in conjunction with the private memory range, s_idsel using s_ad[23:16] is also rerouted to s_ad24. if s_ad24 is not connected to a pci device, type 1 accesses by the primary host to secondary pci devices using s_ad[23:16] as idsel are master aborted on the secondary port. the private device and memory enable bits (ccntrl[3:2]; pci:40h, respectively) are initialized by the prv_dev input pin state. however, software can change their values after reset. 10.7 address translation the pci 6540 provides an address translation mechanism to accommodate various memory maps on the primary and secondary buses. address translation is supported for both downstream and upstream pci cycles. when enabled, pci cycles accessing a specific address range on the initiator bus pass through to the target bus as the same type of transaction, but with a different address, as specified by the address translation control registers. (refer to section 6.1.2.19, ? address translation control registers, ? and section 6.2.4.13, ? address translation control registers. ? ) 10.7.1 base address registers the pci 6540 supports a maximum of three address ranges that can be translated. the resource configuration is performed through three base address registers ? bar 0, 1, and 2. each base address register (bar) has a 32-bit translation and an 8-bit configuration register associated with it. bar 0 can be configured as a 32-bit i/o or memory bar. bar 1 and bar 2 are 32-bit bars, but can optionally be configured as a single 64-bit memory bar. each follows the standard bar definition described in pci r2.3 . there are two sets of these registers ? one each for downstream and upstream translation. each base address register has a programmable translation address register. if translation is enabled, the pci 6540 uses these registers to translate the address of each cycle accessing memory or i/o space, specified in one of the base address registers.
section 10 address decoding address translation pci 6540 data book, version 1.0 10-6 ? 2003 plx technology, inc. all rights reserved. 10.7.2 transparent mode address translation address translation is not normally used when the pci 6540 is configured to operate in transparent mode. if address translation is not required, the registers referred to in this subsection should remain in their default state. address translation for transparent pci-to-pci bridges is a non-standard function and the method of operation when using this feature is specific to plx devices. when operating in non-transparent mode, the secondary bus, including the pci 6540, must be configured by an intelligent host. this may be an issue in embedded systems where address translation is required, but the systems on the secondary bus do not retain the ability to enumerate a pci system. when using transparent mode address translation, all pci bus enumeration is controlled by the primary bus host, thereby allowing address translation in systems with non-intelligent devices attached to the secondary bus. 10.7.2.1 transparent mode address translation method the method of address translation used by the pci 6540 when configured in transparent mode is similar to non-transparent mode. in this case, the host must be on the bridge primary bus, because the pci 6540 does not respond to type 0 configuration accesses from the secondary bus. address translation between the bridge primary and secondary ports is configured using downstream and upstream bars and downstream and upstream translation address and mask bars. the base address is programmed into the appropriate bar and the region size is determined by the appropriate translation mask register. note that the pci 6540 only performs address translation if the address on the primary or secondary pci bus falls within one of the address translation regions. in addition, for primary-to-secondary address translation, the address translation regions must be within the standard memory base (pcimbar; pci:20h) and memory limit (pcimlmt; pci:22h) or the host-configured i/o base (pciiobar; pci:1ch) and i/o limit (pciiolmt; pci:1dh) regions. for secondary-to-primary address translation, the address translation regions must be outside the host-configured memory and i/o regions. 10.7.2.2 register access as address translation in transparent pci-to-pci bridges is a non-standard operation, access to the registers may require additional software to be written. tables 10-1 (transparent and non-transparent modes) and 10-2 (transparent mode only) list the extended and shadowed registers required for address translation configuration. the extended registers are accessed using the extended register index (extridx; pci:d3h) and extended register data (extrdata; pci:d4h). the address translation bars occupy locations that are reserved or used by other registers in the standard pci-to-pci bridge configuration header. to allow the bars to be programmed without overwriting the standard pci-to-pci bridge information access to these registers, the pci 6540 is protected by bits in the hot swap switch and ror control register (hssrrc[6:5]; pci:9ch). this also ensures that normal pci-to-pci bridge configuration does not accidentally set up address translation. the downstream bars can be accessed using normal pci configuration read/write cycles if the hot swap switch and ror control register downstream translation bar access bit is set to 1 (hssrrc[5]=1; pci:9ch). the upstream bars can be accessed using normal pci configuration read/write cycles if the hot swap switch and ror control register upstream translation bar access bit is set to 1 (hssrrc[6]=1; pci:9ch). to avoid operational issues, reset hssrrc[6:5] to 00b after the bars are configured.
section 10 address translation address decoding pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 10-7 10 ? address decoding note: when the serial eeprom is set to initialize for universal non-transparent mode applications, these registers also activate translation in universal transparent mode if prv_dev=1. (refer to section 10.7.2, ? transparent mode address translation, ? on page 10-6 and section 10.7.3, ? non-transparent mode address translation, ? on page 10-11 for further details.) table 10-1. extended register map (used in address translation) ? offset from extended register index extended register index writable serial eeprom writable 31 24 23 16 15 8 70 08h upstream bar 0 translation address yes yes 09h upstream bar 1 translation address yes yes 0ah upstream bar 2 or upstream bar 1 upper 32 bits translation address yes yes 0bh upstream translation enable upstream bar 2 translation mask upstream bar 1 translation mask upstream bar 0 translation mask yes yes 0ch downstream bar 0 translation address yes yes 0dh downstream bar 1 translation address yes yes 0eh downstream bar 2 or downstream bar 1 upper 32 bits translation address yes yes 0fh downstream translation enable downstream bar 2 translation mask downstream bar 1 translation mask downstream bar 0 translation mask yes yes
section 10 address decoding address translation pci 6540 data book, version 1.0 10-8 ? 2003 plx technology, inc. all rights reserved. note: the registers listed in table 10-2 can be written to only when the appropriate hot swap switch and read-only register bit is set to 1 (hssrrc[6 or 5]=1; pci:9ch). to allow normal device operation, hssrrc[6:5] must be reset to 00b after the registers are configured. table 10-2. pci configuration shadowed registers (used in address translation) ? transparent mode pci configuration register address primary offset to ensure software compatibility with other versions of the pci 6540 family and to ensure compatibility with future enhancements, write 0 to all unused bits. pci writable serial eeprom writable 31 0 10h downstream i/o bar 0 only if hssrrc[5]=1; pci:9ch no 14h downstream memory bar 1 only if hssrrc[5]=1; pci:9ch no 18h downstream memory bar 2 or downstream memory bar 1 upper 32 bits only if hssrrc[5]=1; pci:9ch no 10h upstream i/o or memory bar 0 only if hssrrc[6]=1; pci:9ch no 14h upstream memory bar 1 only if hssrrc[6]=1; pci:9ch no 18h upstream memory bar 2 or upstream memory bar 1 upper 32 bits only if hssrrc[6]=1; pci:9ch no
section 10 address translation address decoding pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 10-9 10 ? address decoding 10.7.2.3 address translation on primary-to-secondary (downstream) transactions the standard pci-to-pci bridge memory and i/o base and limit registers specify the address range within the primary pci memory map and i/o memory map, to which the pci 6540 responds. transactions within these regions are forwarded to the secondary bus. the pci 6540 retains two memory regions and one i/o region configured for address translation. these regions must fall within the base/limit range of the previously noted memory and i/o spaces. to program the downstream bars, set the hot swap switch and ror control register downstream translation bar access bit (hssrrc[5]=1; pci:9ch). (refer to section 10.7.2.2.) the base addresses of the three downstream memory regions are configured using the downstream memory bars (transparent mode ? pcibar0; primary pci:10h, pcibar1; primary pci:14h and pcibar2; primary pci:18h, non-transparent mode ? pcibar0; primary pci:10h, secondary pci:50h, pcibar1; primary pci:14h, secondary pci:54h and pcibar2; primary pci:18h, secondary pci:58h. program these registers with the lowest (base) address of the region in which memory translation is to occur. to ensure correct decoding, the base address must be a multiple of the range (or size) of the address translation region. ( for example , if the range is 1 mb, then suitable base addresses would be 0000_0000h, 0010_0000h, 0020_0000h, and so forth.) the downstream translation mask registers (dwnbar1msk[15:8], ext:0fh and dwnbar2msk [23:16], ext:0fh) determine the range (or size) of the address translation regions. the range must be a power of 2; therefore, the range is specified by programming the appropriate power in the mask register. ( for example , 4 mb = 2 22 , so if a range of 4 mb is required, program the value 22d into the appropriate mask register.) when an address translation region is mapped into memory space, the minimum range is 1 mb for dwnbar1msk and 4 kb for dwnbar2msk. smaller ranges may be programmed into these registers; however, the smaller range may result in unpredictable device behavior. pcibar1 and pcibar2 may be combined to allow 64-bit address translation. in this case, pcibar1 represents the lower 32 bits, and pcibar2 the upper 32 bits, of the base address. to enable 64-bit address translation, set dwnbar1msk[14]=1. dwnbar0msk[7] (non-transparent mode only), dwnbar1msk[15], and dwnbar2msk[23] are used to determine whether a region is prefetchable. this allows the address translation region to be mapped into prefetchable memory space rather than memory space. program dwntnbar1; ext:0dh and dwntnbar2; ext:0eh with the base address for address translation on the secondary bus. whatever the transaction offset above pcibar x , the offset is added to dwntnbar x to obtain the transaction address on the secondary bus. for example , if pcibar1=1000_0000h and dwntnbar1=8000_0000h, a primary bus transaction at location 1000_0100h results in a secondary bus transaction at location 8000_0100h. the method of programming the registers for i/o address translation is the same as that for the memory regions. in this case, the i/o region base addresses are configured using pcibar0; primary pci:10h. as with the memory regions, to ensure correct decoding, program the register with the lowest (base) address of the region in which i/o translation is to occur, and the base address as a multiple of the range (or size) of the address translation region. the i/o address translation region range is programmed using dwnbar0msk[7:0], ext:0fh. the minimum range for correct operation is 4 kb. dwnbar0msk[7:6] must be set to 00b to ensure that the region is mapped into i/o space, which is not prefetchable. program dwntnbar0; ext:0ch with the base address for i/o address translation on the secondary bus. after the appropriate registers are programmed, the individual base address regions may be enabled for address translation by setting the appropriate downstream translation enable bits (dwntne[26:24]=111b; ext:0fh). dwntne[26:24]
section 10 address decoding address translation pci 6540 data book, version 1.0 10-10 ? 2003 plx technology, inc. all rights reserved. enable address translation on pcibar2, pcibar1, and pcibar0, respectively. 10.7.2.4 address translation on secondary-to-primary (upstream) transactions when performing downstream address translation, the transaction address must be within the range associated with the standard pci-to-pci bridge memory and i/o base and limit registers for address translation to occur. in the case of upstream address translation, the transaction on the secondary bus must be outside of this region. if the transaction is within this region, the cycle is forwarded to the primary bus with the original address ( that is , no address translation occurs). the method of operation for upstream address translation is the same as downstream translation. however, there are three memory translation windows as upstream pcibar0 (pciubar0; pci:10h) can be configured to map into memory or i/o space. as previously stated, these registers must be configured such that the regions for address translation are outside the pci-to-pci bridge memory and i/o base and limit regions. to program the upstream bars, set the hot swap switch and ror control register upstream translation bar access bit (hssrrc[6]=1; pci:9ch). (refer to section 10.7.2.2.) the base addresses of the three upstream memory regions are configured using pciubar0; pci:10h, pciubar1; pci:14h, and pciubar2; pci:18h. program these registers with the lowest (base) address of the region in which memory translation is to occur. to ensure correct decoding, the base address must be a multiple of the range (or size) of the address translation region. the upstream bar 0, 1, and 2 translation mask registers (upsbar x msk; ext:0bh) determine the range (or size) of the address translation regions. to configure pciubar0 to map into memory space, set upsbar0msk[6]=1. the minimum range is 1 mb for upsbar1msk and 4 kb for upsbar0msk and upsbar2msk. smaller ranges may be programmed into these registers; however, the smaller range may result in unpredictable device behavior pciubar1 and pciubar2 may be combined to allow 64-bit address translation. in this case, pciubar1 represents the lower 32 bits, and pciubar2 the upper 32 bits, of the base address. to enable 64-bit address translation, set upsbar1msk[14]=1. upsbar0msk[7], upsbar1msk[15], and upsbar2msk[23] are used to determine whether a region is prefetchable. this allows the address translation region to be mapped into prefetchable memory space rather than memory space. program upstnbar0; ext:08h, upstnbar1; ext:09h, and upstnbar2; ext:0ah with the base address for address translation on the primary bus. whatever the transaction offset above pciubar, add the transaction offset to the upstnbar offset to obtain the transaction address on the primary bus. the method of programming registers for i/o address translation is the same as that for the memory regions. in this case, the i/o region base addresses are configured using pciubar0; primary pci:10h. as with the memory regions, to ensure correct decoding, program the register with the lowest (base) address of the region in which i/o translation is to occur, and the base address as a multiple of the range (or size) of the address translation region. the range of the i/o address translation region is programmed using upsbar0msk[7:0]; ext:0bh. the minimum range for correct operation is 4 kb. upsbar0msk[7:6] must be set to 00b to map the region into i/o space and state that the region is not prefetchable. program upstnbar0; ext:08h with the base address for i/o address translation on the secondary bus. after the appropriate registers (previously noted) are programmed, the individual base address regions may be enabled for address translation by setting the appropriate bits of upstne[26:24]; ext:0bh. bits [26:24] enable address translation on pciubar2, pciubar1, and pciubar0, respectively. setting bit [26, 25, or 24] to 1 enables address translation on that bar.
section 10 address translation address decoding pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 10-11 10 ? address decoding 10.7.2.5 serial eeprom configuration of transparent mode address translation in transparent mode, the pci 6540 loads the serial eeprom contents up to the end of group 4 (refer to section 7, ? serial eeprom ? ). the address translation control registers contained in group 5 of the serial eeprom must be configured from the primary bus host. however, if prv_dev is tied high, all serial eeprom contents, including those in group 5, are loaded at boot-up and, assuming that the serial eeprom values are suitable, the host only programmed the pcibar x and pciubar x registers. note that pulling prv_dev high enables private device operation. (refer to section 10.6 for further details.) 10.7.3 non-transparent mode address translation this subsection provides specific details for programming the pci 6540 address translation control registers for support of non-transparent operations, illustrating a typical sequence performed by the secondary host. the secondary host first determines which resources to make accessible to the host on the bridge primary bus. the following combinations can be provided:  one 32-bit i/o translated address range and one 64-bit memory translated address range  one 32-bit i/o translated address range and two 32-bit memory translated address ranges  one 32-bit memory translated address range and one 64-bit memory translated address range  three 32-bit memory translated address ranges to specify resources for the primary host, the secondary host can program the downstream bar 0, 1, and 2 translation mask registers (dwnbar0msk, dwnbar1msk, and dwnbar2msk; ext:0fh, respectively). the primary interface uses these registers to configure its bars. the first field in the translation mask register specifies the amount of address space required by the pci 6540. the value programmed in this field is interpreted as a bit position into the corresponding bar in primary configuration space. the bios determines the amount of address space requested by the bar by writing the value of 0fh and reading back the register. the read value returned is ones (1) in all bit positions above the value specified in the translation mask register. for example , to request 4 kb of address space, the bar returns ffff_f000h. this is specified in the translation mask register by programming a value of bh (1011b, 11d) in the msb position of address mask field, which indicates a need for 11 zeros (0) in the address size, or 4 kb. the downstream bar 0 translation mask register has a bar type bit (dwnbar0msk[6]; ext:0fh), which can be used to specify whether bar 0 indicates an i/o or memory range. this bit becomes reflected in the pci downstream i/o bar 0 register (pcibar0[0]; primary pci:10h). in addition, the prefetchable bit (dwnbar0msk[7]; ext:0fh) specifies whether the address register points to prefetchable address space, and is reflected in the corresponding bar 0 register, bits [2:1], if specified as a memory range. note: in transparent mode, pcibar0 must map into i/o space (not prefetchable) and dwnbar0msk[7] is not used. in non- transparent mode, dwnbar0msk[7] can map into either memory or i/o space. the downstream bar 1 translation mask register (dwnbar1msk; ext:0fh) can only configure the downstream memory bar 1 register (pcibar1; primary pci:14h). pcibar1 can be configured as prefetchable or non-prefetchable by way of the prefetchable bit (dwnbar1msk[15]; ext:0fh). in addition, the bar type bit (dwnbar1msk[14]; ext:0fh) allows configuration as a 32- or 64-bit register. if programmed as a 64-bit register, there is no need to program the bar 2 translation mask register. the downstream bar 2 translation mask register (dwnbar2msk; ext:0fh) can configure the third base address register (pcibar2; primary pci:18h) only as a 32-bit base address register, and can be selected as a prefetchable or non-prefetchable address range by way of the prefetchable bit (dwnbar2msk[23]; ext:0fh).
section 10 address decoding address translation pci 6540 data book, version 1.0 10-12 ? 2003 plx technology, inc. all rights reserved. after programming the mask registers, the secondary host programs the downstream bar 0, 1, and 2 translation address registers (dwntnbar0; ext:0ch, dwntnbar1; ext:0dh, and dwntnbar2; ext:0eh, respectively). the programmed addresses are the starting address of each of the shared address spaces on the secondary interface address map. at this point, the secondary host has completed its programming and allows the primary bus to be configured, unless p_boot=0 and is indicated otherwise by the s_port_ready bit (upstne [31]=0; ext:0bh). the primary bus bars can be configured by bios, but require software to enable translation by programming the downstream translation enable register (dwntne; ext:0fh). alternately, these registers can be programmed into the serial eeprom device, to be autoloaded during power-up.
pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 11-1 11 ? transaction ordering 11 transaction ordering this section describes transaction ordering in conventional pci and pci-x modes. to maintain data coherency and consistency, the pci 6540 complies with pci r2.3 and pci-x r1.0b cross-bridge transaction ordering rules. 11.1 conventional pci transaction ordering this subsection describes the ordering rules that control conventional pci transaction forwarding across the pci 6540. for a detailed discussion of transaction ordering, refer to pci r2.3, appendix e. 11.1.1 transactions governed by ordering rules in conventional pci mode, ordering relationships are established for the following classes of transactions crossing the pci 6540:  posted write transactions (comprised of memory write and memory write and invalidate transactions) ? completed at the source before completing at the destination ( that is , data is written into intermediate data buffers before reaching the target).  delayed write request transactions (comprised of i/o write and configuration write transactions) ? terminated by target retry on the initiator bus and queued in the delayed transaction queue. a delayed write transaction must complete on the target bus before completing on the initiator bus.  delayed write completion transactions (comprised of i/o write and configuration write transactions) ? completed on the target bus, with the target response queued in the buffers. a delayed write completion transaction proceeds in the direction opposite to that of the original delayed write request ( that is , the transaction proceeds from target-to-initiator bus).  delayed read request transactions (comprised of all memory read, i/o read, and configuration read transactions) ? terminated by target retry on the initiator bus and queued in the delayed transaction queue.  delayed read completion transactions (comprised of all memory read, i/o read, and configuration read transactions) ? completed on the target bus, and the read data was queued in the read data buffers. a delayed read completion transaction proceeds in the direction opposite that of the original delayed read request ( that is , the transaction proceeds from target-to-initiator bus). the pci 6540 does not combine or merge write transactions. it does not:  combine separate write transactions into a single write transaction ? this optimization is best implemented in the originating master.  merge bytes on separate masked write transactions to the same dword address ? this optimization is also best implemented in the originating master.  collapse sequential write transactions to the same address into a single write transaction ? pci r2.3 does not allow combining of transactions. 11.1.2 general ordering guidelines conventional pci-independent transactions on the primary and secondary buses have a relationship only when those transactions cross the pci 6540. the following general ordering guidelines govern transactions crossing the pci 6540:  ordering relationship of a transaction, with respect to other transactions, is determined when the transaction completes ( that is , when a transaction ends with a termination other than target retry).  requests terminated with a target retry can be accepted and completed in any order with respect to other transactions terminated with a target retry. if the order of completion of delayed requests is important, the initiator should not start a second delayed transaction until the first one completes. if more than one delayed transaction is initiated, the initiator should repeat all the delayed transaction requests, using a fairness algorithm. repeating a delayed transaction cannot be contingent on completion of another delayed transaction; otherwise, deadlock may occur.
section 11 transaction ordering conventional pci transaction ordering pci 6540 data book, version 1.0 11-2 ? 2003 plx technology, inc. all rights reserved.  write transactions flowing in one direction have no ordering requirements with respect to write transactions flowing in the other direction. the pci 6540 can simultaneously accept posted write transactions on both interfaces, as well as simultaneously initiate posted write transactions on both interfaces.  acceptance of a posted memory write transaction as a target can never be contingent on the completion of an unlocked, unposted transaction as a master. this is true of the pci 6540 and must also be true of other bus agents; otherwise, deadlock may occur.  pci 6540 accepts posted write transactions, regardless of the state of completion of delayed transactions being forwarded across the pci 6540. 11.1.3 ordering rules table 11-1 delineates the ordering relationships of all transactions and refers, by number, to the ordering rules that follow. the following ordering rules describe the transaction relationships. each ordering rule is followed by an explanation, and the ordering rules are referred to by number in table 11-1. these ordering rules apply to posted write transactions, delayed write and read requests, and delayed write and read completion transactions crossing the pci 6540 in the same direction. note that delayed completion transactions cross the pci 6540 in the direction opposite to that of the corresponding delayed requests. 1. posted write ? posted write transactions must complete on the target bus in the order in which the transactions were received on the initiator bus. the subsequent posted write transaction could be setting a flag that covers the data in the first posted write transaction. if the second transaction were to complete before the first transaction, devices checking that flag could subsequently be using stale data. 2. delayed write request ? delayed write requests cannot pass previously queued posted write data. as in the case of posted memory write transactions, the delayed write transaction might be setting a flag regarding data in the posted write transaction. if the delayed write request were to complete before the earlier posted write transaction, devices checking the flag could subsequently be using stale data. 3. delayed read request ? a delayed read request traveling in the same direction as a previously queued posted write transaction must push the posted write data ahead of it. the posted write transaction must complete on the target bus before the delayed read request can be attempted on the target bus. the read transaction might be in the same location as the write data; therefore, if the read transaction were to pass the write transaction, the read would return stale data. 4. delayed write completion ? posted write transactions must be provided opportunities to pass delayed read and write requests and completions. otherwise, deadlock may occur when bridges that support delayed transactions are used in the same system with bridges that do not support delayed transactions. a fairness algorithm is used to arbitrate between the posted write and delayed transaction queues. the pci 6540 can return delayed read transactions in a different order than requested if the drt out-of-order enable bit is set to 1 (mscopt[2]=1; pci:46h). requested cycles can execute out of order across the bridge, if all other ordering rules are satisfied. therefore, if the pci 6540 starts a delayed transaction that is retried by the target, the pci 6540 can execute another transaction in the delayed transaction request queue. also, if there are delayed write and read requests in the queue, and the read data fifos are full, the pci 6540 may execute the delayed write request before the delayed read request. on cycle completion, the pci 6540 may complete cycles in a different order than that requested by the initiator. 5. delayed read completion ? a delayed read completion must ? pull ? ahead of previously queued posted write data traveling in the same direction. in this case, the read data is traveling in the same direction as the write data, and the initiator of the read transaction is on the same side of the bridge as the target of the write transaction. the posted write transaction must complete to the target before read data is returned to the initiator. the read transaction could be to a status register of the initiator of the posted write data and therefore should not complete until the write transaction is complete.
section 11 conventional pci transaction ordering transaction ordering pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 11-3 11 ? transaction ordering note: the superscript accompanying certain table entries refers to the five applicable ordering rules listed in section 11.1.3. many entries are not governed by these ordering rules; therefore, the implementation can choose whether the transactions pass each other. a ? y ? indicates that transactions may be completed out of order or ? pass ? each other. an ? n ? indicates that the row transaction must not pass the column transaction. table 11-1. conventional pci transaction ordering summary pass posted write delayed write request delayed read request delayed write completion delayed read completion posted write n 1 y 4 y 4 y 4 y 4 delayed write request n 5 yyyy delayed read request n 3 yyyy delayed write completion yyyyy delayed read completion n 2 yyyy
section 11 transaction ordering pci-x transaction ordering pci 6540 data book, version 1.0 11-4 ? 2003 plx technology, inc. all rights reserved. 11.1.4 data synchronization data synchronization refers to the relationship between interrupt signaling and data delivery. pci r2.3 provides the following alternative methods for synchronizing data and interrupts:  device signaling the interrupt performs a read of the data just written (software)  device driver performs a read operation to any register in the interrupting device before accessing data written by the device (software)  system hardware guarantees that write buffers are flushed before interrupts are forwarded the pci 6540 does not have a hardware mechanism to guarantee data synchronization for posted write transactions. therefore, all posted write transactions must be followed by a read operation, from the pci 6540 to the location recently written (or some other location along the same path), or from the device driver to one of the pci 6540 registers. 11.2 pci-x transaction ordering this subsection describes the ordering rules that control pci-x transaction forwarding across the pci 6540. for a detailed discussion of transaction ordering, refer to pci-x r1.0b, use of relaxed ordering appendix, chapter 11 . pci-x introduces two features that affect transaction ordering and passing rules that are not present in conventional pci ? relaxed ordering attribute bit and split transactions. 11.2.1 relaxed ordering attribute bit the pci-x relaxed ordering attribute bit (ad29) may be used to allow a memory write transaction to pass other memory writes and to allow split read completions to pass memory writes.  if the relaxed ordering attribute bit is set for a read transaction, the completion for that transaction is allowed to pass previously posted memory write transactions traveling in the direction of the completion.  if the relaxed ordering attribute bit is set for a memory write transaction, that transaction is allowed to pass previous posted memory write transactions moving in the same direction on the host bridge. note: the pci 6540 ignores the relaxed ordering attribute bit for memory write transactions and maintains the order of memory write transactions that cross the pci 6540. 11.2.2 split transactions in pci-x, split transaction ordering and deadlock- avoidance rules are almost identical to the delayed transaction rules in conventional pci (transaction order is established as the transactions complete). table 11-2 lists the ordering requirements for all split and memory write transactions (the columns represent the first of two transactions, and the rows represent the second). table 11-3 provides a case-by- case discussion of split transactions.  split requests can be reordered with respect to other split requests. if an initiator requires two split transactions to complete in order, the initiator must not issue the second request until the first split transaction completes.  split read completions that have the same sequence id must remain in address order. the completer must supply the split read completions on the bus, in address order, to guarantee that the requester always receives the data in its natural order. there are no ordering restrictions for split read completions with different sequence ids.
section 11 pci-x transaction ordering transaction ordering pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 11-5 11 ? transaction ordering table 11-2. transactions ordering and deadlock-avoidance rules row pass column? memory write (column 2) split read request (column 3) split write request (column 4) split read completion (column 5) split write completion (column 6) memory write (row a) a) no b) y/n yes yes yes yes split read request (row b) no y/n y/n y/n y/n split write request (row c) no y/n y/n y/n y/n split read completion (row d) a) no b) y/n yes yes a) y/n b) no y/n split write completion (row e) y/n yes yes y/n y/n legend : yes = second transaction must be allowed to pass the first transaction to avoid deadlock. y/n = pci 6540 may optionally allow the second transaction to pass the first. no = second transaction must not be allowed to pass the first transaction (to preserve strong write ordering).
section 11 transaction ordering pci-x transaction ordering pci 6540 data book, version 1.0 11-6 ? 2003 plx technology, inc. all rights reserved. table 11-3. split transactions ? case-by-case discussion split transaction comments a2a unless the relaxed ordering attribute bit is set, a memory write transaction must not pass any other memory writes. a2b if the relaxed ordering attribute bit is set, that memory write transaction is allowed to pass all other memory writes in the host bridge only. a3, a4 a memory write transaction must be allowed to pass split requests to avoid deadlock. a5, a6 a memory write transaction must be allowed to pass split completions to avoid deadlock. b2, c2 split requests cannot pass a memory write transaction. b3, b4 split requests are allowed to be blocked by, or pass, split completions. c3, c4 split transactions have the same requirements as delayed transactions in conventional pci mode. b5, b6 split requests are allowed to be blocked by, or pass, split completions. c5, c6 split requests pass split completions. (deadlock does not occur if split completions block split requests.) d2a unless the relaxed ordering attribute bit is set, split read completions cannot pass a memory write. d2b if the relaxed ordering attribute bit is set, the split read completion is allowed to pass a previous posted memory write transaction. d3, d4 split read completions must be allowed to pass all split requests to avoid deadlock. d5a unless two split read completions are part of the same sequence, they are allowed to be blocked by, or pass, each other. d5b split read completions with the same sequence id must remain in address order. d6 split read completions are allowed to be blocked by, or pass, split write completions. e2 split write completions are allowed to be blocked by, or pass, memory write transactions moving in the opposite direction (they have no ordering relationship). e3, e4 split write completions must be allowed to pass all split requests to avoid deadlock. e5, e6 split write completions are allowed to be blocked by, or pass, split read and write completions.
pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 12-1 12 ? error handling 12 error handling this section provides detailed information regarding how the pci 6540 manages errors. it also describes error status reporting and error operation disabling. 12.1 overview the pci 6540 checks, forwards, and generates parity on the primary and secondary interfaces. to maintain transparency, the pci 6540 can either forward the existing parity condition from one bus to the other, along with address and data, or regenerate the data parity on the other bus. the pci 6540 always attempts to be transparent when reporting errors, but this is not always possible because of the presence of posted data and delayed transactions. to support error reporting on the pci bus, the pci 6540 implements the following:  p_perr#, p_serr#, s_perr#, and s_serr# signals  primary and secondary status registers (transparent mode ? pcisr; pci:06h and pcissr; pci:1eh, non-transparent mode ? pcisr; primary pci:06h, secondary pci:46h and pcissr; primary pci:46h, secondary pci:06h)  device-specific p_serr# event disable and status registers (transparent mode ? pserred; pci:64h and pserrsr; pci:6ah, non- transparent mode ? pserred; pci:96h and psserrsr[3:0]; pci:98h)  non-transparent mode only ? device-specific s_serr# event disable and status registers (sserred; pci:97h and psserrsr[7:4]; pci:98h) 12.2 address parity errors the pci 6540 checks address parity for all bus transactions, and address and bus commands. when the pci 6540 detects an address parity error on the primary interface, the following occurs: 1. in conventional pci mode, if the command register parity error response enable bit is set (transparent mode ? pcicr[6]=1; pci:04h, non- transparent mode ? pcicr[6]=1; primary pci:04h, secondary pci:44h), the pci 6540 does not claim the transaction with p_devsel#. in pci-x mode, with a pci-x command other than split completion, the pci 6540 claims the bus as usual and immediately terminates the cycle with a target abort. in either case, the pci 6540 does not accept the cycle in its fifo operation. in pci-x mode, with a pci-x split completion command, the pci 6540 receives the cycle as if there is no parity error. if the parity error response enable bit is not set, the pci 6540 proceeds as usual and accepts the transaction if the transaction is directed to, or across, the pci 6540. 2. pci 6540 sets the status register detected parity error bit (transparent mode ? pcisr[15]=1; pci:06h, non-transparent mode ? pcisr[15]=1; primary pci:06h, secondary pci:46h). 3. pci 6540 asserts p_serr# and sets the status register signaled system error bit (pcisr[14]=1), if the command register p_serr# enable and parity error response enable bits are set (pcicr[8, 6]=11b). when the pci 6540 detects an address parity error on the secondary interface, the following occurs: 1. in conventional pci mode, if the bridge control register parity error response enable bit is set (transparent mode ? bcntrl[0]=1; pci:3eh, non-transparent mode ? bcntrl[0]=1; pci:42h), the pci 6540 does not claim the transaction with s_devsel#.
section 12 error handling attribute parity errors (pci-x mode) pci 6540 data book, version 1.0 12-2 ? 2003 plx technology, inc. all rights reserved. in pci-x mode, with a pci-x command other than split completion, the pci 6540 claims the bus as usual and immediately terminates the cycle with a target abort. in either case, the pci 6540 does not accept the cycle in its fifo operation. in pci-x mode, with a pci-x split completion command, the pci 6540 receives the cycle as if there is no parity error. if the parity error response enable bit is not set, the pci 6540 proceeds as usual and accepts the transaction if the transaction is directed to, or across, the pci 6540. 2. pci 6540 sets the secondary status register detected parity error bit (transparent mode ? pcissr[15]=1; pci:1eh, non-transparent mode ? pcissr[15]=1; primary pci:46h, secondary pci:06h). 3. pci 6540 asserts s_serr# and sets the status register signaled system error bit (pcissr[14]=1), if the following conditions are met:  non-transparent mode only ? command register s_serr# enable bit is set (pciscr[8]=1; primary pci:44h, secondary pci:04h), and  bridge control register parity error response enable bit is set (bcntrl[0]=1) 12.3 attribute parity errors (pci-x mode) pci-x attribute parity errors are managed in the same way as address parity errors. (refer to section 12.2.) 12.4 data parity errors when forwarding transactions, the pci 6540 attempts to pass the data parity condition from one interface to the other unchanged, whenever possible, to allow the master and target devices to manage the error condition. the following subsections describe, for each transaction, the sequence that occurs when a parity error is detected and the way in which the parity condition is forwarded across the bridge. 12.4.1 configuration write transactions to configuration space when the pci 6540 detects a data parity error during a type 0 configuration write transaction to configuration space, the following occurs: 1. if the command register parity error response enable bit is set (transparent mode ? pcicr[6]=1; pci:04h, non-transparent mode ? pcicr[6]=1; primary pci:04h, secondary pci:44h), the pci 6540 asserts p_perr#. if the parity error response enable bit is not set, the pci 6540 does not assert p_perr#. in either case, the configuration register is written. 2. pci 6540 sets the status register detected parity error bit (transparent mode ? pcisr[15]=1; pci:06h, non-transparent mode ? pcisr[15]=1; primary pci:06h, secondary pci:46h), regardless of the parity error response enable bit state (pcicr[6]=x). 12.4.2 read transactions when the pci 6540 detects a parity error during a read transaction, the target drives data and data parity, and the initiator checks parity and conditionally asserts p_perr# or s_perr#. for downstream transactions, when the pci 6540 detects a read data parity error on the secondary bus, the pci 6540: 1. asserts s_perr# two cycles following the data transfer, if the secondary interface bridge control register parity error response enable bit is set (transparent mode ? bcntrl[0]=1; pci:3eh, non-transparent mode ? bcntrl[0]=1; pci:42h). 2. sets the secondary status register detected parity error bit (transparent mode ? pcissr[15]=1; pci:1eh, non-transparent mode ? pcissr[15]=1; primary pci:46h, secondary pci:06h). 3. sets the secondary status register data parity error detected bit (pcissr[8]=1), if the secondary interface bridge control register parity error response enable bit is set. 4. returns the bad parity with the data to the initiator on the primary bus. if the data with the bad parity is prefetched and not read by the initiator on the primary bus, the data is discarded and data with bad parity is not returned to the initiator. 5. completes the transaction as usual.
section 12 data parity errors error handling pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 12-3 12 ? error handling for upstream transactions, when the pci 6540 detects a read data parity error on the primary bus, the pci 6540: 1. asserts p_perr# two cycles following the data transfer, if the primary interface command register parity error response enable bit is set (pcicr[6]=1). 2. sets the primary status register detected parity error bit (pcisr[15]=1). 3. sets the primary status register data parity error detected bit (pcisr[8]=1), if the primary interface command register parity error response enable bit is set. 4. returns the bad parity with the data to the initiator on the secondary bus. if the data with the bad parity is prefetched and not read by the initiator on the secondary bus, the data is discarded and data with bad parity is not returned to the initiator. 5. completes the transaction as usual. the pci 6540 returns to the initiator the data and parity received from the target. when the initiator detects a parity error on this read data and is enabled to report the error, the initiator asserts its perr# signal (which is then connected to the pci 6540 p_perr# or s_perr# signal, depending on the bus to which the initiator is connected) two cycles after the data transfer. it is assumed that the initiator takes responsibility for handling a parity error condition; therefore, when the pci 6540 detects the initiator ? s perr# assertion while returning read data to the initiator, the pci 6540 takes no further action and completes the transaction as usual. 12.4.3 delayed write transactions the pci 6540 detects a data parity error during a delayed write transaction and conditionally asserts perr#. the pci 6540 either passes or regenerates data parity to the target bus. for delayed write transactions, a parity error can occur:  during the original delayed write request transaction  when the initiator repeats the delayed write request transaction  when the pci 6540 completes the delayed write transaction to the target 12.4.3.1 conventional pci mode in conventional pci mode, when a delayed write transaction is queued, the address, command, address and data parity, data, and byte enable bits are captured and a target retry is returned to the initiator. when the pci 6540 detects a parity error on the write data for the initial delayed write request transaction, the following occurs: 1. if the parity error response enable bit corresponding to the initiator bus is set (primary ? pcicr[6]=1, secondary ? bcntrl[0]=1), the pci 6540 asserts p_perr# or s_perr# two clocks after the data. the pci 6540 always accepts the cycle, and can optionally pass the incorrect parity to the other bus, or regenerate the parity bit on the other bus. 2. pci 6540 sets the status register detected parity error bit corresponding to the initiator bus (primary ? pcisr[15]=1, secondary ? pcissr[15]=1), regardless of the parity error response bit state. following the initiating transaction (the first pci 6540 retry), the subsequent data parity error of similar transaction on the initiating bus is detected as usual; however, the data parity error no longer affects fifo operation. the cycles are considered similar if they have the same address, command, byte enables and write data. the parity bit is not part of this ? similar ? detection operation. therefore, if a data parity error occurs only in the parity bit (same data as before), the cycle operates as usual. conversely, if a data parity error occurs in the data segment (different data from the initiating write data), the pci 6540 treats the error as a new delayed write transaction. 12.4.3.2 pci-x mode in pci-x mode, a delayed write transaction is queued with its address, command, parity, data, and byte enable bits, then returns a split response to the initiator. when the pci 6540 detects a parity error on the write data, the following occurs: 1. if the parity error response enable bit corresponding to the initiator bus is set (primary ? pcicr[6]=1, secondary ? bcntrl[0]=1), the pci 6540 asserts p_perr# or s_perr#. the pci 6540 always accepts the cycle, and can
section 12 error handling data parity errors pci 6540 data book, version 1.0 12-4 ? 2003 plx technology, inc. all rights reserved. optionally pass the incorrect parity to, or regenerate the parity bit on, the other bus. 2. the pci 6540 sets the status register detected parity error bit corresponding to the initiator bus (primary ? pcisr[15]=1, secondary ? pcissr[15]=1), regardless of the parity error response bit state. 12.4.4 split completion (pci-x mode) when detecting a data parity error on the originating bus for a split completion other than a split completion message, the pci 6540 asserts p_perr# or s_perr# and sets the appropriate error status bit for that interface. the pci 6540 ? drives bad parity ? when it forwards the split completion. when the pci 6540 detects a data parity error on the originating bus for a split completion message, the following occurs:  pci-x-to-pci mode ? parity error is not considered in the fifo operation. if the split completion error bit is set to 1 (ad30=1), the pci 6540 signals a target abort; otherwise, it is considered to be a normal completion.  pci-x-to-pci-x mode ? pci 6540 forwards the exact message with the incorrect parity bit to the other bus. 12.4.5 posted write transactions during downstream posted write transactions, when the pci 6540, responding as a target, detects a data parity error on the initiator (primary) bus, the pci 6540: 1. asserts p_perr# two cycles after the data transfer, if the primary interface command register parity error response enable bit is set (pcicr[6]=1). 2. sets the primary interface status register detected parity error bit (pcisr[15]=1). 3. captures and forwards the bad parity condition to the secondary bus. 4. completes the transaction as usual. similarly, during upstream posted write transactions, when the pci 6540, responding as a target, detects a data parity error on the initiator (secondary) bus, the pci 6540: 1. asserts s_perr# two cycles after the data transfer, if the secondary interface bridge control register parity error response enable bit is set (bcntrl[0]=1). 2. sets the secondary interface status register detected parity error bit (pcissr[15]=1). 3. captures and forwards the bad parity condition to the primary bus. 4. completes the transaction as usual. during downstream write transactions, when a data parity error is reported on the target (secondary) bus by the target ? s assertion of s_perr#, the pci 6540: 1. sets the secondary status register data parity error detected bit (pcissr[8]=1), if the secondary interface bridge control register parity error response enable bit is set (bcntrl[0]=1). 2. asserts p_serr# and sets the status register signaled system error bit (pcisr[14]=1), if the following conditions are met:  primary interface command register p_serr# enable and parity error response enable bits are set (pcicr[8, 6]=11b), and  device-specific p_serr# disable bit for posted write parity errors is not set (pserred[1]=0), and  secondary interface bridge control register parity error response enable bit is set (bcntrl[0]=1), and  pci 6540 did not detect the parity error on the initiator (primary) bus ( that is , the parity error was not forwarded from the primary bus)
section 12 data parity error reporting summary error handling pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 12-5 12 ? error handling during upstream write transactions, when a data parity error is reported on the target (primary) bus by the target ? s assertion of p_perr#, the pci 6540: 1. sets the status register data parity error detected bit (pcisr[8]=1), if the primary interface command register parity error response enable bit is set (pcicr[6]=1). 2. asserts p_serr# and sets the status register signaled system error bit (pcisr[14]=1), if the following conditions are met:  primary interface command register p_serr# enable and parity error response enable bits are set (pcicr[8, 6]=11b), and  secondary interface bridge control register parity error response enable bit is set (bcntrl[0]=1), and  pci 6540 did not detect the parity error on the initiator (secondary) bus ( that is , the parity error was not forwarded from the secondary bus) p_serr# assertion signals the parity error condition when the initiator is not sent information about an error having occurred. because the data is delivered with no errors, there is no other way to signal this information to the initiator. if a parity error is forwarded from the initiator bus to the target bus, p_serr# is not asserted. 12.5 data parity error reporting summary in the previous subsections, the pci 6540 responses to data parity errors are presented according to transaction type in progress. this subsection organizes the pci 6540 responses to data parity errors according to the status bits set by the pci 6540 and the signals asserted. table 12-1 delineates the primary interface status register detected parity error bit status. this bit is set when the pci 6540 detects a parity error on the primary interface. table 12-2 delineates the secondary interface status register detected parity error bit status. this bit is set when the pci 6540 detects a parity error on the secondary interface. table 12-3 delineates the primary interface status register data parity error detected bit status. this bit is set under the following conditions:  pci 6540 must be a master on the primary bus, and  primary interface command register parity error response enable bit must be set (pcicr[6]=1), and  p_perr# is detected asserted, or a parity error is detected on the primary bus table 12-4 delineates the secondary interface status register data parity error detected bit status. this bit is set under the following conditions:  pci 6540 must be a master on the secondary bus, and  secondary interface bridge control register parity error response enable bit must be set (bcntrl[0]=1), and  s_perr# is detected asserted, or a parity error is detected on the secondary bus table 12-5 delineates p_perr# assertion. this signal is set under the following conditions:  pci 6540 is either the target of a write transaction or the initiator of a read transaction on the primary bus, and  primary interface command register parity error response enable bit must be set (pcicr[6]=1), and  pci 6540 detects a data parity error on the primary bus, or detects s_perr# asserted during the completion phase of a downstream delayed write transaction on the target (secondary) bus table 12-6 delineates s_perr# assertion. this signal is set under the following conditions:  pci 6540 is either the target of a write transaction or the initiator of a read transaction on the secondary bus, and  secondary interface bridge control register parity error response enable bit must be set (bcntrl[0]=1), and  pci 6540 detects a data parity error on the secondary bus, or detects p_perr# asserted during the completion phase of an upstream delayed write transaction on the target (primary) bus
section 12 error handling system error (serr#) reporting pci 6540 data book, version 1.0 12-6 ? 2003 plx technology, inc. all rights reserved. table 12-7 delineates p_serr# assertion. this signal is set under the following conditions:  command register p_serr# enable and parity error response enable bits must be set (pcicr[8, 6]=11b),  bridge control register parity error response enable bit must be set (bcntrl[0]=1), and  pci 6540 detects s_perr# asserted on a downstream posted write transaction, or p_perr# asserted on an upstream posted write transaction, and  pci 6540 did not detect the parity error as a target of the posted write transaction 12.6 system error (serr#) reporting in this data book, when p_serr# assertion is discussed, the following conditions are assumed:  for the pci 6540 to assert p_serr#, the command register p_serr# enable bit must be set (pcicr[8]=1)  when the pci 6540 asserts p_serr#, the pci 6540 must also set the status register signaled system error bit (pcisr[14]=1) in compliance with p-to-p bridge r1.1 , the pci 6540 asserts p_serr# when it detects the s_serr# input asserted and the bridge control register s_serr# enable bit is set (bcntrl[1]=1). in addition, the pci 6540 also sets the secondary status register signaled system error bit (pcissr(14]=1). the pci 6540 also conditionally asserts p_serr# for the following conditions:  master abort detected during posted write transaction (on the secondary bus)  target abort detected during posted write transaction (on the secondary bus)  posted write data discarded after 2 24 delivery attempts (2 24 target retries received)  s_perr# reported on the target bus during a posted write transaction (refer to section 12.5)  delayed write data discarded after 2 24 delivery attempts (2 24 target retries received)  delayed read data cannot be transferred from the target after 2 24 attempts (2 24 target retries received)  master timeout on delayed transaction the device-specific p_serr# status register reports the reason for p_serr# assertion. most of these events have additional device-specific disable bits in the p_serr# event disable register that can mask p_serr# assertion for specific events. the master timeout condition has p_serr# and s_serr# enable bits for that event in the bridge control register (bcntrl[12:11]), and therefore does not have a device-specific disable bit.
section 12 system error (serr#) reporting error handling pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 12-7 12 ? error handling note: x = don ? t care. table 12-1. primary interface detected parity error bit status primary detected parity error bit (pcisr[15]) transaction type direction bus on which error detected primary parity error response enable bit (pcicr[6]) secondary parity error response enable bit (bcntrl[0]) 0 read downstream primary x x 0 read downstream secondary x x 1 read upstream primary x x 0 read upstream secondary x x 1 posted write downstream primary x x 0 posted write downstream secondary x x 0 posted write upstream primary x x 0 posted write upstream secondary x x 1 delayed write downstream primary x x 0 delayed write downstream secondary x x 0 delayed write upstream primary x x 0 delayed write upstream secondary x x
section 12 error handling system error (serr#) reporting pci 6540 data book, version 1.0 12-8 ? 2003 plx technology, inc. all rights reserved. table 12-2. secondary interface detected parity error bit status secondary detected parity error bit (pcissr[15]) transaction type direction bus on which error detected primary parity error response enable bit (pcicr[6]) secondary parity error response enable bit (bcntrl[0]) 0 read downstream primary x x 1 read downstream secondary x x 0 read upstream primary x x 0 read upstream secondary x x 0 posted write downstream primary x x 0 posted write downstream secondary x x 0 posted write upstream primary x x 1 posted write upstream secondary x x 0 delayed write downstream primary x x 0 delayed write downstream secondary x x 0 delayed write upstream primary x x 1 delayed write upstream secondary x x
section 12 system error (serr#) reporting error handling pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 12-9 12 ? error handling note: x = don ? t care. table 12-3. primary interface data parity error detected bit status primary data parity error detected bit (pcisr[8]) transaction type direction bus on which error detected primary parity error response enable bit (pcicr[6]) secondary parity error response enable bit (bcntrl[0]) 0 read downstream primary x x 0 read downstream secondary x x 1 read upstream primary 1 x 0 read upstream secondary x x 0 posted write downstream primary x x 0 posted write downstream secondary x x 1 posted write upstream primary 1 x 0 posted write upstream secondary x x 0 delayed write downstream primary x x 0 delayed write downstream secondary x x 1 delayed write upstream primary 1 x 0 delayed write upstream secondary x x
section 12 error handling system error (serr#) reporting pci 6540 data book, version 1.0 12-10 ? 2003 plx technology, inc. all rights reserved. table 12-4. secondary interface data parity error detected bit status secondary data parity error detected bit (pcissr[8]) transaction type direction bus on which error detected primary parity error response enable bit (pcicr[6]) secondary parity error response enable bit (bcntrl[0]) 0 read downstream primary x x 1 read downstream secondary x 1 0 read upstream primary x x 0 read upstream secondary x x 0 posted write downstream primary x x 1 posted write downstream secondary x 1 0 posted write upstream primary x x 0 posted write upstream secondary x x 0 delayed write downstream primary x x 1 delayed write downstream secondary x 1 0 delayed write upstream primary x x 0 delayed write upstream secondary x x
section 12 system error (serr#) reporting error handling pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 12-11 12 ? error handling notes: x = don ? t care. * parity error detected on the target (secondary) bus, but not on the initiator (primary) bus. table 12-5. p_perr# assertion p_perr# transaction type direction bus on which error detected primary parity error response enable bit (pcicr[6]) secondary parity error response enable bit (bcntrl[0]) 1 (de-asserted) read downstream primary x x 1 read downstream secondary x x 0 (asserted) read upstream primary 1 x 1 read upstream secondary x x 0 posted write downstream primary 1 x 1 posted write downstream secondary x x 1 posted write upstream primary x x 1 posted write upstream secondary x x 0 delayed write downstream primary 1 x 0* delayed write downstream secondary 1 1 1 delayed write upstream primary x x 1 delayed write upstream secondary x x
section 12 error handling system error (serr#) reporting pci 6540 data book, version 1.0 12-12 ? 2003 plx technology, inc. all rights reserved. table 12-6. s_perr# assertion s_perr# transaction type direction bus on which error detected primary parity error response enable bit (pcicr[6]) secondary parity error response enable bit (bcntrl[0]) 1 (de-asserted) read downstream primary x x 0 (asserted) read downstream secondary x 1 1 read upstream primary x x 1 read upstream secondary x x 1 posted write downstream primary x x 1 posted write downstream secondary x x 1 posted write upstream primary x x 0 posted write upstream secondary x 1 1 delayed write downstream primary x x 1 delayed write downstream secondary x x 0* delayed write upstream primary 1 1 0 delayed write upstream secondary x 1
section 12 system error (serr#) reporting error handling pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 12-13 12 ? error handling notes: x = don ? t care. * parity error detected on the target (secondary) bus, but not on the initiator (primary) bus. ** parity error detected on the target (primary) bus, but not on the initiator (secondary) bus. table 12-7. p _serr# for data parity error assertion p_perr# transaction type direction bus on which error detected primary parity error response enable bit (pcicr[6]) secondary parity error response enable bit (bcntrl[0]) 1 (de-asserted) read downstream primary x x 1 read downstream secondary x x 1 read upstream primary x x 1 read upstream secondary x x 1 posted write downstream primary x x 0* (asserted) posted write downstream secondary 1 1 0** posted write upstream primary 1 1 1 posted write upstream secondary x x 1 delayed write downstream primary x x 1 delayed write downstream secondary x x 1 delayed write upstream primary x x 1 delayed write upstream secondary x x

pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 13-1 13 ? exclusive access 13 exclusive access this section describes p_lock# and s_lock# signal use to implement exclusive access to a target for transactions that cross the pci 6540, including concurrent locks, and acquiring and ending exclusive access. 13.1 concurrent locks the primary and secondary bus lock mechanisms concurrently operate, except when a locked transaction is crossing the pci 6540. a primary master can lock a primary target without affecting the lock status on the secondary bus, and vice versa. this means that a primary master can lock a primary target concurrent with a secondary master locking a secondary target. 13.2 acquiring exclusive access across pci 6540 for a pci bus, before acquiring access to the p_lock# and/or s_lock# signal and starting a series of locked transactions, the initiator must first check that both of the following conditions are met:  pci bus is idle, and  p_lock# and/or s_lock# is de-asserted the initiator leaves p_lock# and/or s_lock# de-asserted during the address phase and asserts p_lock# and/or s_lock# one clock cycle later. target lock is achieved after the target completes a data transfer. locked transactions can cross the pci 6540 in the downstream and upstream directions, from the primary-to-secondary bus and vice versa. when the target resides on another pci bus, the master must acquire not only the lock on its own pci bus, but also the lock on every bus between its bus and the target bus. when the pci 6540 detects an initial locked transaction on the primary bus that is intended for a target on the secondary bus, the pci 6540 samples the address, transaction type, byte enable, and parity bits, and the s_lock# signal. because a target retry is signaled to the initiator, the initiator must relinquish the lock on the primary bus, and therefore the lock is not yet established. the first locked transaction must be a read transaction. subsequent locked transactions can be read or write transactions. posted memory write transactions that are a part of the locked-transaction sequence are nevertheless posted. memory read transactions that are part of the locked transaction sequence are not prefetched. when the locked delayed read request is queued, the pci 6540 does not queue further transactions until the locked sequence is complete. the pci 6540 signals a target retry to all transactions initiated subsequent to the locked read transaction that are intended for targets on the opposite side of the pci 6540. the pci 6540 allows transactions queued before the locked transaction to complete before initiating the locked transaction. when the locked delayed read request moves to the head of the delayed transaction queue, the pci 6540 initiates the request as a locked read transaction by de-asserting s_lock# on the target bus during the first address phase, then asserting s_lock# one cycle later. if s_lock# was previously asserted (used by another initiator), the pci 6540 waits to request access to the secondary bus until s_lock# is sampled de-asserted when the target bus is idle. note that the existing lock on the target bus did not cross the pci 6540; otherwise, the pending queued locked transaction would not have queued. when the pci 6540 is able to complete a data transfer with the locked read transaction, the lock is established on the secondary bus. when the initiator repeats the locked read transaction on the primary bus with the same address, transaction type, byte enable and parity bits, the pci 6540 transfers the read data back to the initiator, and the lock is also established on the primary bus.
section 13 exclusive access ending exclusive access pci 6540 data book, version 1.0 13-2 ? 2003 plx technology, inc. all rights reserved. for the pci 6540 to recognize and respond to the initiator, the initiator ? s subsequent attempts of the read transaction must use the locked-transaction sequence (de-assert p_lock# during the address phase, then re-assert p_lock# one cycle later). if the p_lock# sequence is not used in subsequent attempts, a master timeout condition may result. when a master timeout condition occurs, p_serr# is conditionally asserted, the read data and queued read transaction are discarded, and s_lock# is de-asserted on the target bus. after the intended target is locked, subsequent locked transactions initiated on the initiator bus that are forwarded by the pci 6540 are driven as locked transactions on the target bus. when the pci 6540 receives a master or target abort in response to the delayed locked read transaction, this status is passed back to the initiator, and no locks are established on the initiator or target bus. the pci 6540 resumes forwarding unlocked transactions in both directions. 13.3 ending exclusive access after the lock is acquired on the initiator and target buses, the pci 6540 must maintain the lock on the target bus for subsequent locked transactions until the initiator relinquishes the lock. the only time a target retry causes the lock to be relinquished is on the first transaction of a locked sequence. on subsequent transactions in the sequence, the target retry has no effect on the p_lock# and/or s_lock# signal status. an established target lock is maintained until the initiator relinquishes the lock. the pci 6540 does not recognize whether the current transaction is the last one in a sequence of locked transactions until the initiator de-asserts p_lock# and/or s_lock# at the end of the transaction. when the last locked transaction is a delayed transaction, the pci 6540 previously completed the transaction on the secondary bus. in this case, when the pci 6540 detects that the initiator has relinquished the p_lock# and/or s_lock# signal by sampling the signal de-asserted while p_frame# or s_frame# is de-asserted, the pci 6540 de-asserts p_lock# and/or s_lock# on the target bus when possible. because of this behavior, p_lock# and/or s_lock# may not be de-asserted until several cycles after the last locked transaction completes on the target bus. after de-asserting p_lock# and/or s_lock# to indicate the end of a sequence of locked transactions, the pci 6540 resumes forwarding of unlocked transactions. when the last locked transaction is a posted write transaction, the pci 6540 de-asserts p_lock# and/or s_lock# on the target bus at the end of the transaction because the lock was relinquished at the end of the write transaction on the initiator bus. when the pci 6540 receives a master or target abort in response to a locked delayed transaction, the pci 6540 returns a master or target abort when the initiator repeats the locked transaction. the initiator must then de-assert p_lock# and/or s_lock# at the end of the transaction. the pci 6540 sets the appropriate status bits, flagging the abnormal target termination condition. normal forwarding of unlocked posted and delayed transactions is resumed. when the pci 6540 receives a master or target abort in response to a locked posted write transaction, the pci 6540 cannot pass back that status to the initiator. the pci 6540 asserts p_serr# on the initiator bus when a master or target abort is received during a locked posted write transaction, if the command register p_serr# enable bit is set (transparent mode ? pcicr[8]=1; pci:04h, non-transparent mode ? pcicr[8]=1; primary pci:04h, secondary pci:44h). p_serr# is asserted for the master abort condition if the bridge control register master abort mode bit is set (transparent mode ? bcntrl[5]=1; pci:3eh, non-transparent mode ? bcntrl[5]=1; pci:42h). note: the pci 6540 has an option to ignore the lock protocol, by clearing the secondary and/or primary lock enable bits (mscopt[14:13]=00b; pci:46h).
pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 14-1 14 ? pci bus arbitration 14 pci bus arbitration this section describes primary and secondary bus arbitration and bus parking. 14.1 overview the pci 6540 must arbitrate for use of the secondary bus when forwarding downstream transactions, and for the primary bus when forwarding upstream transactions. the primary bus arbiter is external to the pci 6540 (typically located on the motherboard). for the secondary pci bus, the pci 6540 has a built-in internal arbiter. if required, the internal arbiter can be disabled, allowing use of an external arbiter on the secondary bus. 14.2 primary pci bus arbitration the pci 6540 uses a request output pin, p_req#, and a grant input pin, p_gnt#, for primary pci bus arbitration. the pci 6540 asserts p_req# when forwarding transactions upstream ( that is , when operating as an initiator on the primary pci bus). when there are one or more pending transactions in the upstream direction queues ? posted write data or delayed transaction requests ? the pci 6540 maintains p_req# assertion. however, if a target retry, disconnect, or abort is received in response to a pci 6540-initiated transaction on the primary pci bus, the pci 6540 de-asserts p_req# for two pci clock cycles. for all cycles passing through the bridge, p_req# is not asserted until the complete transaction request is queued. if the pci 6540 asserts p_req# and the primary bus external arbiter asserts p_gnt# to grant the bus to the pci 6540, the pci 6540 initiates a transaction on the primary bus on the next pci clock cycle. if the primary bus external arbiter asserts pci 6540 p_gnt# when p_req# is not asserted, the pci 6540 parks p_ad x , p_cbe x #, p_par, and p_par64 by driving these signals to valid logic levels. if the primary bus is parked on the pci 6540 and the pci 6540 has a transaction to initiate on the primary bus, the pci 6540 initiates the transaction if p_gnt# remained asserted during the cycle prior to the start of the transfer. 14.3 secondary pci bus arbitration the pci 6540 implements a secondary pci bus internal arbiter, which supports up to eight external bus masters in addition to the pci 6540. if required, the internal arbiter can be disabled, allowing use of an external arbiter for secondary bus arbitration. 14.3.1 secondary bus arbitration using internal arbiter to use the internal arbiter, the secondary bus arbiter enable pin, s_cfn#, must be tied low. the pci 6540 has eight secondary bus request input pins, (s_req[7:0]#) and eight secondary bus grant output pins (s_gnt[7:0]#) to support external secondary bus masters. if s_cfn# is high, the secondary bus request and grant signals are internally connected to the arbiter and the secondary bus external arbiter connections are disabled. the pci 6540 uses a two-level arbitration scheme, whereby arbitration is divided into two groups ? high- and low-priority. the low-priority group represents a single entry in the high-priority group. therefore, if the high-priority group consists of n masters, the highest priority is assigned to the low-priority group at least once every n +1 transactions. priority changes evenly among the low-priority group. therefore, assuming all masters request the bus, members of the high-priority group are serviced n transactions out of n +1, while one member of the low-priority group is serviced once every n +1 transactions. each master can be assigned to a high- or low-priority group, through the arbiter control register (transparent mode ? acntrl; pci:42h, non- transparent mode ? acntrl; pci:dah). each group can be programmed to use a rotating or fixed priority scheme, through the internal arbiter control register group fixed arbitration bits (iacntrl[2, 0]; pci:50h).
section 14 pci bus arbitration secondary pci bus arbitration pci 6540 data book, version 1.0 14-2 ? 2003 plx technology, inc. all rights reserved. 14.3.2 rotating priority scheme the secondary arbiter supports a programmable two-level rotating algorithm that cares for the eight request/grant pairs to control up to eight external bus masters. in addition, there is a request/grant pair internal to the pci 6540, which allows the device to request and be granted access to the secondary bus. figure 14-1 is an example of the internal arbiter wherein four masters, including the pci 6540, are in the high-priority group, and five masters are in the low-priority group. using this example, if all requests are always asserted, the highest priority rotates among the masters in the following way (the pci 6540 is denoted as b; high-priority members are provided in italic type, and low-priority members in boldface type): b, m0, m1, m2, m3 , b, m0, m1, m2, m4 , b, m0, m1, m2, m5 , and so forth if all masters are assigned to one group, the algorithm defaults to a rotating priority among all masters. after reset, all external masters are assigned to the low-priority group, and the pci 6540 to the high-priority group. therefore, by default, the pci 6540 receives highest priority on the secondary bus every other transaction and priority rotates evenly among the other masters. figure 14-1. secondary bus arbiter example note: in figure 14-1, ? lpg ? denotes ? low-priority group. ? priorities are re-evaluated when s_frame# is asserted ( that is , at the start of each new transaction on the secondary pci bus). from this point, until the time that the next transaction starts, the arbiter asserts the grant signal corresponding to the highest priority request asserted. if a grant for a particular request is asserted, and a higher priority request subsequently asserts, the arbiter de-asserts the asserted grant signal and asserts the grant signal corresponding to the new higher priority request on the next pci clock cycle. when priorities are re-evaluated, the highest priority is assigned to the next highest priority master, relative to the master that initiated the previous transaction. the master that initiated the last transaction now has the lowest priority within its group. priority is also re-evaluated if the requesting agent de-asserts its request without generating cycles while the request was granted. if the pci 6540 detects that an initiator has failed to assert s_frame# after 16 cycles of grant assertion and a secondary bus idle condition, the arbiter re-evaluates grant assignment. 14.3.3 fixed priority scheme the pci 6540 also supports a fixed priority scheme within the two priority groups. in this case, the internal arbiter control register controls whether the high- or low-priority group uses the fixed or rotating priority scheme (iacntrl[2, 0]; pci:50h). if using a fixed priority scheme, a master within the group is assigned the highest priority within its group, and an option is set to control the priority of other masters relative to the highest priority master. this is controlled through the internal arbiter control register highest priority master and group arbitration order bits (iacntrl [11:4, 3, 1]; pci:50h). using the example provided in figure 14-1, but with the groups at fixed priority, suppose that:  master 7 has the highest priority of the low-priority group (iacntrl[7:4]=0111b)  pci 6540 has the highest priority of the high-priority group (iacntrl[11:8]=1000b)  priority decreases in ascending order of masters for both groups (iacntrl[3, 1]=00b) m1 m2 lpg m0 b m3 m4 m5 m7 m6
section 14 arbitration bus parking pci bus arbitration pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 14-3 14 ? pci bus arbitration the order of priority with the highest first is as follows: b, m0, m1, m2, m7 , m3 , m4 , m5 , m6 if iacntrl[3, 1]=11b, priority increases with ascending order of bus master and the order becomes: b , m2 , m1 , m0 , m7 , m6 , m5 , m4 , m3 take care when using fixed arbitration in the low-priority group. as previously noted, the low-priority group receives the grant only when there are no high-priority group requests. when the arbiter switches to the low-priority group, the highest priority master requesting the bus within that group receives the grant. if there are several requests issued by the high-priority group members and the high-priority master in the low-priority group, then lower priority devices in the low-priority group may have to wait before receiving the grant. to prevent bus contention, if the secondary pci bus is idle, the arbiter waits at least one clock cycle between the s_gnt x # de-assertion and assertion of the next s_req x #. if the secondary pci bus is busy ( that is , s_frame# or s_irdy# is asserted) when another bus master requests the bus, the arbiter can de-assert one grant and assert the next grant during the same pci clock cycle. 14.3.4 secondary bus arbitration using external arbiter the internal arbiter can be disabled by pulling the secondary bus central function control pin (s_cfn#) high. an external arbiter must be used if more than one bus master is required to initiate cycles on the secondary bus. when s_cfn# is tied high, the pci 6540 reconfigures two pins to be external request and grant pins. the s_req0# pin is reconfigured to be the external request output from the pci 6540 and is used by the pci 6540 to request the secondary bus. the s_gnt0# pin is reconfigured to be the pci 6540 external grant input from the external arbiter. if the pci 6540 requests the secondary pci bus (s_req0# asserted) and the external arbiter grants the bus to the pci 6540 (s_gnt0# asserted), the pci 6540 initiates a transaction on the secondary bus one clock cycle later. if the secondary bus external arbiter asserts s_gnt0# when s_req0# is not asserted, the pci 6540 parks s_ad x , s_cbe x #, s_par, and s_par64 by driving these signals to valid logic levels. when using an external arbiter, the unused secondary bus grant outputs (s_gnt[7:0]#) are driven high. unused secondary bus request inputs (s_req[7:0]#) must be pulled high. 14.4 arbitration bus parking bus parking refers to driving the ad x , cbe x #, par, and par64 lines to a known value while the bus is idle. the pci bus is parked on the pci 6540 primary or secondary bus when either or both buses are idle. bus parking occurs when the bus grant to the pci 6540 on the parked bus is being asserted, and the pci 6540 request for that bus is not asserted. the ad x and cbe x # signals are first driven low, then the par signal is driven low one cycle later. when the gnt# signal for the parked bus is de-asserted, the pci 6540 places the ad x , cbe x #, par, and par64 signals into a high-impedance state on the next pci clock cycle. if the pci 6540 is parking and wants to initiate a transaction on that bus, the pci 6540 can start the transaction on the next pci clock cycle by asserting frame# if gnt# remains asserted. 14.4.1 software controlled pci 64-bit extension signals parking by reading the input status of dev64#, u_mode, p_boot, and trans#, software can determine which pci 6540 port is interfaced to a backplane and whether it can perform 64-bit transactions. if only 32-bit transactions can be used, then software can program the pci 6540 to drive the unused 64-bit extension signals to 0. this is an optional mechanism for use in the event that external pull-up resistors are not desirable (which may be the case in high-speed applications) and prevents the 64-bit extension signals from floating. the control bits are primary 64-bit extension signals park and secondary 64-bit extension signals park , located in hssrrc[2:1]; pci:9ch.

pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 15-1 15 ? gpio interface 15 gpio interface this section describes the gpio interface pins and control registers. 15.1 gpio interface pins the pci 6540 provides 16, general-purpose i/o (gpio) interface pins. (refer to table 15-1 on page 15-2) during normal operation, the configuration registers control the gpio interface. in addition, the gpio pins can be used for the following:  during secondary reset, the gpio interface can be used to shift in a 16-bit serial stream that serves as a secondary bus clock disable mask  in non-transparent mode, the gpio[14, 4] and gpio[15, 5] pins can be used as an interrupt for communication between the primary and secondary interfaces, respectively the gpio[7:0] pins have weak internal pull-up resistors. external pull-up or pull-down resistors are recommended. 15.2 gpio control registers during normal operation, the gpio interface is controlled by the following three gpio configuration registers:  output enable (gpiooe)  output data (gpiood)  input data (gpioid) the gpio[7:4] and gpio[3:0] configuration registers consist of five 8-bit fields:  output enable write 1 to set (gpiooe x [7:4])  output enable write 1 to clear (gpiooe x [3:0])  output data write 1 to set (gpiood x [7:4])  output data write 1 to clear (gpiood x [3:0])  input data (gpioid x [7:4]) the output enable fields control whether the gpio signals are inputs or outputs. each signal is independently controlled by a bit in each output enable field. if a 1 is written to the write 1 to set field, the corresponding pin is activated as an output. if a 1 is written to the write 1 to clear field, the output driver is placed into a high-impedance state, and the pin is input only. writing zeros (0) to these registers has no effect. the reset state for these signals is input only. the output data fields also use the write 1 to set and write 1 to clear method. if a 1 is written to the write 1 to set field and the pin is enabled as an output, the corresponding gpio output is driven high. if a 1 is written to the write 1 to clear field and the pin is enabled as an output, the corresponding gpio output is driven low. writing zeros (0) to these registers has no effect. the value written to the output data register is driven only when the gpio signal is configured as output. a type 0 configuration write operation is used to program these registers. the reset value for the output is 0. the input data field is read-only and reflects the current value of the gpio pins. a type 0 configuration read operation to the input data register returns the values of these pins. gpio[7:0] pins can be read at any time, whether configured as input only or bi-directional. the gpio[15:8] configuration registers consist of three, 8-bit fields:  output data (write 0 or 1)  output enable (write 0 or 1 to disable or enable)  input data the gpio[15:8] configuration register output data fields are written directly as 0 or 1. likewise, the output enable fields are directly written, with a value of 1 enabling output. a type 0 configuration read to the input data register returns the value of the gpio[15:8] pins. during power-up, pwrgd must be a sharp rising signal to latch the status of the gpio[15:8] pins.
section 15 gpio interface gpio control registers pci 6540 data book, version 1.0 15-2 ? 2003 plx technology, inc. all rights reserved. table 15-1. gpio pin alternate functions gpio pin alternate function gpio0 ? pull-up functions as secondary bus clock mask shift register clock output when p_rstin# is asserted. gpio1 ? pull-up no alternate function. gpio2 ? pull-up functions as shift/load control output to shift register when p_rstin# is asserted. gpio3 ? pull-up no alternate function. gpio4 ? pull-up if non-transparent mode is enabled, can be used as an active low-level triggered external interrupt input to trigger p_inta#. gpio5 ? pull-up if non-transparent mode is enabled, can be used as an active low-level triggered external interrupt input to trigger s_inta#. gpio6 ? pull-up no alternate function. gpio7 ? pull-up no alternate function. gpio8 status latched during power-up pwrgd reset. gpio9 status latched during power-up pwrgd reset. gpio10 status latched during power-up pwrgd reset. gpio11 status latched during power-up pwrgd reset. gpio12 status latched during power-up pwrgd reset. gpio13 status latched during power-up pwrgd reset. pull low for 133 mhz transparent mode operations. pull high for 100 mhz transparent mode operations. the initial state is used to determine the maximum allowable pci-x speed status value, reported in the pci-x secondary status register (pcixssr; pci:f2h). gpio14 status latched during power-up pwrgd reset. if non-transparent mode is enabled, this input can be used as an active low-level triggered external interrupt input to trigger p_inta#. gpio15 status latched during power-up pwrgd reset. if non-transparent mode is enabled, this input can be used as an active low-level triggered external interrupt input to trigger s_inta#.
pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 16-1 16 ? supported commands 16 supported commands this section discusses the pci 6540 conventional pci and pci-x command set. 16.1 primary interface command set table 16-1 delineates the pci 6540 primary interface conventional pci and pci-x command set. table 16-1. primary interface supported commands p_cbe[3:0]# command support conventional pci pci-x 0000b interrupt acknowledge interrupt acknowledge not supported. 0001b special cycle special cycle not supported. 0010b i/o read i/o read if the address is within pass-through i/o range, the transaction is claimed and passed through. if the address points to an i/o-mapped internal bridge register, the transaction is claimed. otherwise, the transaction is ignored. 0011b i/o write i/o write same as i/o read (p_cbe[3:0]#=0010b). 0100b reserved reserved ? 0101b reserved reserved ? 0110b memory read memory read dword if the address is within pass-through memory range, the transaction is claimed and passed through. if the address points to a memory-mapped internal bridge register, the transaction is claimed. otherwise, transaction is ignored. 0111b memory write memory write same as a memory read (p_cbe[3:0]#=0110b). 1000b reserved alias to memory read block conventional pci ? not supported. pci-x ? treated as a memory read block (p_cbe[3:0]#=1110b). 1001b reserved alias to memory write block conventional pci ? not supported. pci-x ? treated as a memory write block (p_cbe[3:0]#=1111b).
section 16 supported commands primary interface command set pci 6540 data book, version 1.0 16-2 ? 2003 plx technology, inc. all rights reserved. 1010b configuration read configuration read type 0 configuration read, claimed if the p_idsel line is asserted; otherwise, the read is ignored. if claimed, the target internal register(s) read. never passed through. type 1 configuration read, claimed if the p_idsel line is asserted; otherwise, the read is ignored. if the target bus is the bridge ? s secondary bus, the transaction is claimed and passed through as a type 0 configuration read. if the target bus is a subordinate bus that exists behind the bridge (but not equal to the secondary bus), the transaction is claimed and passed through as a type 1 configuration read. 1011b configuration write configuration write type 0 configuration write, same as configuration read (p_cbe[3:0]#=1010b). type 1 configuration write (not special cycle request), same as configuration read (p_cbe[3:0]#=1010b). configuration write as special cycle request (device = 1fh, function = 7h). if the target bus is the bridge ? s secondary bus, the transaction is claimed and passed through as a special cycle. if the target bus is a subordinate bus that exists behind the bridge (but not equal to the secondary bus), the transaction is claimed and passed through unchanged as a type 1 configuration write. 1100b memory read multiple split completion conventional pci ? treated as a memory read (p_cbe[3:0]#=0110b). pci-x ? split completion. 1101b dac dac lower 32 bits of the address driven out on p_ad[31:0], followed by the upper 32 bits. 1110b memory read line memory read block conventional pci ? treated as a memory read (p_cbe[3:0]#=0110b). pci-x ? memory read block. 1111b memory write and invalidate memory write block conventional pci ? treated as a memory write. pci-x ? memory write block. table 16-1. primary interface supported commands (continued) p_cbe[3:0]# command support conventional pci pci-x
section 16 secondary interface command set supported commands pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 16-3 16 ? supported commands 16.2 secondary interface command set table 16-2 delineates the pci 6540 secondary interface conventional pci and pci-x command set. table 16-2. secondary interface supported commands s_cbe[3:0]# command support conventional pci pci-x 0000b interrupt acknowledge interrupt acknowledge not supported. 0001b special cycle special cycle not supported. 0010b i/o read i/o read if the address is within pass-through i/o range, the transaction is claimed and passed through. if the address points to an i/o-mapped internal bridge register, the transaction is claimed. otherwise, transaction is ignored. 0011b i/o write i/o write same as i/o read (s_cbe[3:0]#=0010b). 0100b reserved reserved ? 0101b reserved reserved ? 0110b memory read memory read dword if the address is within pass-through memory range, the transaction is claimed and passed through. if the address points to a memory-mapped internal bridge register, the transaction is claimed. otherwise, transaction is ignored. 0111b memory write memory write same as a memory read (s_cbe[3:0]#=0110b). 1000b reserved alias to memory read block conventional pci ? not supported. pci-x ? treated as a memory read block (s_cbe[3:0]#=1110b). 1001b reserved alias to memory write block conventional pci ? not supported. pci-x ? treated as a memory write block (s_cbe[3:0]#=1111b). 1010b configuration read configuration read upstream configuration read cycles. not supported. 1011b configuration write configuration write type 0 configuration write. not supported. type 1 configuration write (not a special cycle request). not supported. configuration write as special cycle request (device = 1fh, function = 7h). if the target bus is the bridge ? s primary bus, the transaction is claimed and passed through as a special cycle. if the target bus is neither the primary bus nor in the range of buses defined by the bridge ? s secondary and subordinate bus registers, the transaction is claimed and passed through unchanged as a type 1 configuration write. if the target bus is not the bridge ? s primary bus, but is within the range of buses defined by the bridge ? s secondary and subordinate bus registers, the transaction is ignored.
section 16 supported commands secondary interface command set pci 6540 data book, version 1.0 16-4 ? 2003 plx technology, inc. all rights reserved. 1100b memory read multiple split completion conventional pci ? treated as a memory read (s_cbe[3:0]#=0110b). pci-x ? split completion. 1101b dac dac lower 32 bits of the address driven out on s_ad[31:0], followed by the upper 32 bits. 1110b memory read line memory read block conventional pci ? treated as a memory read (s_cbe[3:0]#=0110b). pci-x ? memory read block. 1111b memory write and invalidate memory write block conventional pci ? treated as a memory write (s_cbe[3:0]#=0111b). pci-x ? memory write block. table 16-2. secondary interface supported commands (continued) s_cbe[3:0]# command support conventional pci pci-x
pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 17-1 17 ? bridge behavior 17 bridge behavior this section presents various scenarios of bridge behavior that occurs when the target responds to a cycle generated by the pci 6540 on behalf of the initiating master. 17.1 bridge actions for various cycle types a pci cycle is initiated by asserting frame#. in a bridge, there are several possibilities. table 17-1 summarizes these possibilities, and delineates the pci 6540 action for various cycle types. after the pci cycle is initiated, a target then has up to four cycles to respond before a master abort is initiated. if the target detects an address hit, it asserts devsel# in the cycle corresponding to the configuration status register devsel# timing bits (transparent mode ? pcisr[10:9]; pci:06h or pcissr[10:9], non-transparent mode ? pcisr[10:9]; primary pci:06h, secondary pci:46h or pcissr [10:9]; primary pci:46h, secondary pci:06h). pci cycle termination can occur in a number of ways. normal termination begins by the initiator (master) de-asserting frame#, with irdy# being asserted (or remaining asserted) on the same cycle. the cycle completes when trdy# and irdy# are simultaneously asserted. the target should de-assert trdy# for one cycle following final assertion (sustained three-state signal). table 17-1. bridge actions for various cycle types initiator target pci 6540 response master on primary port target on the same primary port does not respond. this situation is detected by decoding the address and monitoring p_devsel# for other fast and medium devices on the primary port. target on secondary port asserts p_devsel# and terminates the cycle normally if posted; otherwise, returns with a retry. next, passes the cycle to the appropriate port. when cycle is complete on the target port, the pci 6540 waits for the initiator to repeat the same cycle and end with normal termination. target not on primary nor secondary port does not respond and the cycle terminates as a master abort. master on secondary port target on the same secondary port does not respond. target on primary or other secondary port asserts s_devsel# and terminates the cycle normally if posted; otherwise, returns with a retry. next, passes the cycle to the appropriate port. when cycle is complete on the target port, the pci 6540 waits for the initiator to repeat the same cycle and end with normal termination. target not on primary nor other secondary port does not respond.
section 17 bridge behavior abnormal termination (initiated by bridge master) pci 6540 data book, version 1.0 17-2 ? 2003 plx technology, inc. all rights reserved. 17.2 abnormal termination (initiated by bridge master) 17.2.1 master abort a master abort indicates that the pci 6540, operating as a master, receives no response from a target ( that is , no target asserts p_devsel# or s_devsel#). the bridge de-asserts frame#, then de-asserts irdy#. 17.3 parity and error reporting parity must be checked for all addresses and write data. parity is defined on the p_par/p_par64 and s_par/s_par64 signals. parity should be even [ for example , an even number of ones (1)] across ad, cbe#, and par. parity information on par is valid the cycle after ad and cbe# are valid. 17.3.1 reporting parity errors for all address phases, if a parity error is detected, the error is reported on the p_serr# signal by asserting p_serr# for one cycle, then placing two cycles into a high-impedance state after the bad address. p_serr# can be asserted only if the command register p_serr# and parity error response bits are both set to 1 (transparent mode ? pcicr[8, 6]=11b; pci:04h, non-transparent mode ? pcicr[8, 6]=11b; primary pci:04h, secondary pci:44h). for write data phases, a parity error is reported by asserting p_perr# two cycles after the data phase and remains asserted for one cycle when pcicr[8]=1. the target reports any type of data parity errors during write cycles, while the master reports data parity errors during read cycles. detection of an address parity error causes the pci bridge target to not claim the bus (p_devsel# remains inactive) and the cycle then terminates with a master abort. when the bridge is operating as master, a data parity error during a read cycle results in the bridge master initiating a master abort. 17.4 s_idsel mapping when the pci 6540 detects a type 1 configuration transaction for a device connected to the secondary port, it translates the type 1 transaction-to-type 0 transaction on the downstream interface. the type 1 configuration format uses a 5-bit field at p_ad[15:11] as the device number, which the pci 6540 translates to s_ad[31:16]. table 17-2 explains how the pci 6540 generates s_idsel. devices are not allowed to connect idsel to ad16 (the source bridge is device number 0). the pci 6540 is the source bridge for its secondary bus. pci-x systems drive the address four clocks before asserting frame# for configuration transactions to allow additional setting time for the idsel input of devices. table 17-2. s_idsel generation p_ad[15:11] s_ad[31:16] device number s_ad bit 00000b 00001b 00010b ? 01011b 01100b ? 01111b 1xxxxb 0000_0000_0000_0001b 0000_0000_0000_0010b 0000_0000_0000_0100b ? 0000_1000_0000_0000b 0001_0000_0000_0000b ? 1000_0000_0000_0000b 0000_0000_0000_0000b 0 (source bridge) 1 2 ? 11 12 ? 15 special cycle 16 17 18 ? 27 28 ? 31 n/a
section 17 32- to 64-bit cycle conversion bridge behavior pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 17-3 17 ? bridge behavior 17.5 32- to 64-bit cycle conversion when a 32-bit device generates a request to a 64-bit pci target, the pci 6540 can optionally convert this cycle to a 64-bit cycle on the target bus. the conversion is used only on 32-bit prefetchable read memory and posted memory write cycles with more than two data transfers. this function is controlled through the miscellaneous options register force 64-bit control bits (mscopt[15, 11]; pci:46h). if either force 64-bit control bit is set, all posted memory write and prefetchable memory read cycles are internally stored in the pci 6540 as 64-bit cycles if the data transfer is greater than 2 dword cycles. these cycles execute on the target following standard 64-bit pci protocol. the pci 6540 asserts req64#, and if the target responds with ack64# active, the pci 6540 generates a 64-bit cycle. for memory write cycles, if the initial dword address is on an odd boundary, the pci 6540 generates a 64-bit cycle with a value of fh for the low dword of the initial write data transfer. if the target of a posted memory write is a 32-bit device, and the target retries with a data transfer on an odd dword boundary, the remainder of the cycle is completed later as a 32-bit cycle when the pci 6540 retries it. otherwise, the pci 6540 continues to retry the cycle as a 64-bit transaction.

pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 18-1 18 ? pci flow-through optimization 18 pci flow-through optimization this section describes flow-through optimization, including precautions when using non-optimized pci master devices, posted write and delayed read flow through, read cycle optimization, and read prefetch boundaries. 18.1 overview the pci 6540 operates in flow-through mode when data from the same transaction is simultaneously transferred on both sides of the bridge ( that is , data on one side of the bridge ? flows through ? to the other side of the bridge). the pci 6540 has several options to optimize pci transfers after flow-though mode is achieved by way of the bridge. the purpose of flow-through mode is to improve pci bus utilization and efficiency. if data transfers on one side of the bridge are broken into several transactions on the other side of the bridge, poor bus efficiency results. by using flow-through mode, the pci 6540 improves bus efficiency for posted writes, delayed reads, and reads to prefetchable spaces. 18.2 precautions when using non-optimized pci master devices the pci 6540 is capable of high-performance prefetching. however, some pci masters may be unable to prefetch a large amount of data. this may be due to a small internal buffer size or other limiting factors. for example , if data is being read from a register or fifo-based architecture, valuable data may be lost if the host prematurely terminates a prefetch cycle (ideally such spaces would not be listed as prefetchable). under these circumstances the default values for prefetching may be overly aggressive and affect overall performance. in this case, tune default prefetching by reprogramming the prefetch registers, as listed in table 18-1. (refer to section 6, ? registers, ? for a detailed description of these registers.) the serial eeprom can also be used to program the configuration space upon reset. 18.3 posted write flow through during flow through of posted write cycles, if there is only one data transfer pending in the internal post memory write queue, the pci 6540 can be programmed to wait for a specified number of clocks before disconnecting. the pci 6540 de-asserts irdy# on the target side and waits up to seven clocks for additional data from the initiator. if new write data is received from the initiator during this period, the pci 6540 re-asserts irdy# and continues with the write cycle. if new write data is not received during this period, the pci 6540 terminates the cycle to the target with the last data from the queue and later finishes the cycle. the flow-through control registers for posted writes are detailed in section 6, ? registers. ? (refer to pftcr[2:0]; pci:44h and sftcr[2:0]; pci:4eh.) table 18-1. reprogramming prefetch registers configuration space register data primary initial prefetch count (pitlpcnt; pci:48h) same value as cache line size register (transparent mode ? pciclsr; pci:0ch, non-transparent mode ? pciclsr; primary pci:0ch, secondary pci:4ch or pcisclsr; primary pci:4ch, secondary pci:0ch). note: most pcs set this value to 08h. secondary initial prefetch count (sitlpcnt; pci:49h) primary incremental prefetch count (pincpcnt; pci:4ah) 0h secondary incremental prefetch count (sincpcnt; pci:4bh) 0h primary maximum prefetch count (pmaxpcnt; pci:4ch) 0h secondary maximum prefetch count (smaxpcnt; pci:4dh) 0h
section 18 pci flow-through optimization delayed read flow through pci 6540 data book, version 1.0 18-2 ? 2003 plx technology, inc. all rights reserved. 18.4 delayed read flow through for flow through of delayed read cycles, if the internal read queue is almost full, the pci 6540 can be programmed to insert wait states to delay read data from the target for a specified number of clocks before disconnecting. during this time, the pci 6540 de-asserts irdy# on the target bus and waits up to seven clocks. if additional space becomes available in the internal read queue before the end of the irdy# inactive period, the pci 6540 re-asserts irdy# and proceeds with the next read data phase. if no additional space becomes available in the internal read queue, the current data phase becomes the last (irdy# is asserted) and the cycle disconnects at the end of the data phase. the flow-through control registers for delayed reads are detailed in section 6, ? registers. ? (refer to pftcr[6:4]; pci:44h and sftcr[6:4]; pci:4eh.) 18.5 read cycle optimization the main function of read cycle optimization is to increase the probability of flow through occurring during read accesses to prefetchable memory regions. to improve the probability of flow through, the amount of data to be prefetched must be correctly configured. if the pci 6540 prefetches insufficient data, flow through does not occur because prefetching on the target side completes before the initiator retries the read access. under these circumstances, the read cycles become divided into multiple cycles. if the pci 6540 prefetches excessive data and the internal fifos fill, the pci 6540 must wait for the initiator to retry the previous read cycle and then flush the unclaimed data before queuing subsequent cycles. the initial count is normally equivalent to the cache- line size. this assumes that a master usually requires at least one cache line of data. the incremental count is used only when the pci 6540 does not detect flow through for the current cycle being prefetched during the initial prefetch count. the pci 6540 continues prefetching in increments until it reaches the maximum count, then disconnects the cycle. for read prefetching, the pci 6540 implements several registers that control the amount of data prefetched on the primary and secondary pci buses. the prefetch registers listed in table 18-1 can be used to optimize pci 6540 performance during read cycles. the pci 6540 prefetches until flow through occurs or prefetching must stop, based on the following conditions: prefetch continues while: (ipmc + ipc + ipc + ? + ipc) < mpc where: ipmc = initial prefetch maximum count ipc = incremental prefetch count, < ? mpc mpc = maximum prefetch count if the prefetch count did not reach mpc and flow through was achieved, the pci 6540 continues prefetching until the requesting master terminates the prefetch request. otherwise, when mpc is reached, the pci 6540 stops prefetching data. incremental prefetch can be disabled by setting ipc mpc. 18.5.1 primary and secondary initial prefetch count assuming that there is sufficient space in the internal fifo, the primary and secondary initial prefetch count registers (pitlpcnt; pci:48h and sitlpcnt; pci:49h, respectively) control the amount of data initially prefetched by the pci 6540 on the primary or secondary bus during reads to the prefetchable memory region. if flow through is achieved during this initial prefetch, the pci 6540 continues prefetching beyond this count.
section 18 read prefetch boundaries pci flow-through optimization pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 18-3 18 ? pci flow-through optimization 18.5.2 primary and secondary incremental prefetch count the primary and secondary incremental prefetch count registers (pincpcnt; pci:4ah and sincpcnt; pci:4bh, respectively) control the amount of prefetching after the initial prefetch. if flow through is not achieved during the initial prefetch, the pci 6540 attempts to prefetch further data, until the fifo fills, or until the maximum prefetch count is reached. each subsequent prefetch is equal to the incremental prefetch count. 18.5.3 primary and secondary maximum prefetch count the primary and secondary maximum prefetch count registers (pmaxpcnt; pci:4ch and smaxpcnt; pci:4dh, respectively) limit the amount of prefetched data for a single entry available in the internal fifo at any time. during read prefetch cycles, the pci 6540 disconnects the cycle if the data count in the fifo for the current cycle reaches this value, and flow through has not been achieved. 18.6 read prefetch boundaries for memory read and memory read line commands, the pci 6540 prefetches from the starting address up to an address with an offset that is a multiple of the initial prefetch count. for example , if the starting address is 10h and the initial prefetch count equals 20h, the pci 6540 prefetches only a 10h (20h to 10h) count. after this, the pci 6540 begins incremental prefetch until the maximum prefetch count is reached, or flow through is achieved. the exception to this is in the case of a 64-bit request and six or fewer dwords from the boundary, or a 32-bit request and four or fewer dwords from the boundary, in which the pci 6540 does not activate incremental prefetch. for memory read multiple commands, if the starting address is not 0, the pci 6540 first prefetches from the starting address up to the address with an offset equal to that of the initial prefetch count. after this, the pci 6540 prefetches one additional initial prefetch count. for example , if the starting address is 10h and the initial prefetch count equals 20h, the pci 6540 first prefetches a 10h (20h to 10h) count, then continues to prefetch another 20h count. subsequent to this, incremental prefetch is invoked until the maximum prefetch count is reached or flow through is achieved.

pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 19-1 19 ? fifo architecture 19 fifo architecture this section describes fifo architecture, including how the fifos function with memory write and read commands, and how to split the read fifo into four 1-kb blocks. 19.1 overview the pci 6540 contains a 1-kb write fifo and 4-kb read fifo in both the downstream and upstream directions, for a total of 10 kb of data fifo. the fifo architecture is designed for optimal pci-x-to-pci and pci-x-to-pci-x bridging, with the following features:  flow-through capable  programmable prefetch byte counts of up to 2 kb on the pci-x port  programmable timeout flushing or command end flush of prefetched data for pci devices  segmentable into 1-kb fifos, dedicated to each of the four entries  controllable number of outstanding adqs on the pci-x port figure 19-1. fifo architecture read data entry command delivery write data delivery four write entries 1 kb memory write buffer 4 dword i/o write buffer command ent ry four write entries 1 kb memory write buffer 4 dword i/o write buffer wri t e data entr y read data delivery write data delivery read data entry command delivery command ent ry write data entry read data delivery four entries command queue four read entries 4 kb memory/i/o read buffer timeout flush or command end flush segmentable to four 1 kb fifo for each entry four entries command queue four read entries 4 kb memory/i/o read buffer timeout flush or command end flush segmentable to four 1 kb fifo for each entry primary port secondary port
section 19 fifo architecture memory writes pci 6540 data book, version 1.0 19-2 ? 2003 plx technology, inc. all rights reserved. 19.2 memory writes this subsection describes pci-to-pci-x, pci-x-to- pci, and pci-x-to-pci-x memory writes. 19.2.1 pci-to-pci-x memory writes if the initiator writes more than 64 bytes, the pci 6540 absorbs the greatest amount of data possible into the write fifo. when the pci-x port becomes available and there are 64 or more bytes available in the fifo, the pci 6540 begins data delivery from the fifo to the pci-x port, using the byte count present in the fifo. if the initiator byte count is less than 64 bytes, the pci 6540 first receives all the bytes into the fifo, then delivers the bytes to the pci-x port. 19.2.2 pci-x-to-pci memory writes when functioning as a target and receiving data into the write fifo, the pci 6540 begins data delivery from the fifo when the opposite port is available. the pci-x byte count does not influence the start of data delivery to the pci port. 19.2.3 pci-x-to-pci-x memory writes when the pci 6540 is a target, it always accepts the greatest amount of data possible into the write fifo. concurrent with this process, when the opposite port is available and the incoming data reaches an adb boundary, the pci 6540 begins data delivery from the fifo. if the initiator byte count is less than 128 bytes and has not reached an adb boundary, the pci 6540 first receives, then delivers, all the bytes. 19.3 memory reads this subsection describes pci-to-pci-x, pci-x-to- pci, and pci-x-to-pci-x memory reads. 19.3.1 pci-to-pci-x memory reads when the pci 6540 receives a pci read command, the pci 6540 issues a read command to the pci-x port, using the programmed prefetch count specified by the following registers:  primary initial prefetch count (pitlpcnt[2:1]; pci:48h)  primary incremental prefetch count (pincpcnt; pci:4ah)  secondary initial prefetch count (sitlpcnt[2:1]; pci:49h)  secondary incremental prefetch count (sincpcnt; pci:4bh) regardless of the programmed prefetch count, the pci 6540 does not prefetch beyond 16 cache lines. if the count is equal to, or larger than, the maximum programmed outstanding adqs allowed (default is 32 adqs) in the pci-x downstream and upstream split transaction registers (pcixdnstr; pci:fch and pcixupstr; pci:f8h, respectively), at least one pci-x read command is issued. in general, set the maximum programmed outstanding adqs to a value higher than the prefetch count so that the pci 6540 can issue multiple pci-x read requests. when data becomes available in the fifo, the pci 6540 begins data delivery to the pci port. prefetched data in the pci 6540 read fifo can either be flushed (if the pci initiator finishes its current read transaction) or preserved for a programmed time period. upon timeout, if the pci master has not returned to acquire additional data, the fifo flushes the remaining data. this feature can greatly enhance the pci-x bus bandwidth, as the pci 6540 can prefetch up to 16 cache lines of anticipated data for the pci devices.
section 19 memory reads fifo architecture pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 19-3 19 ? fifo architecture 19.3.1.1 prefetched data timeout flushing prefetched data timeout flushing can be controlled by way of the register bits listed in table 19-1. table 19-1. prefetched data timeout flushing control description bufcr[1]; pci:4fh buffer control smart prefetch enable (transparent mode only). amount of data prefetched is defined in the maximum prefetch count registers (pmaxpcnt; pci:4ch and smaxpcnt; pci:4dh). defaults to 0. values after a prefetch command: 0 = remaining prefetched data is discarded upon completion of the current read command. 1 = remaining prefetched data is not discarded, but remains available for the next read command with consecutive address. the prefetched data is only discarded upon a timeout. the timeout period can be programmed using the smart prefetch timeout bits (bufcr[6:5]; pci:4fh). bcntrl[8]; pci:3eh (transparent mode) or bcntrl[8]; pci:42h (non-transparent mode) bridge control primary master timeout. sets the maximum number of pci clocks for an initiator on the primary bus to repeat the delayed transaction request. values: 0 = timeout after 2 15 pci clocks 1 = timeout after 2 10 pci clocks reset to 0. bcntrl[9]; pci:3eh (transparent mode) or bcntrl[9]; pci:42h (non-transparent mode) bridge control secondary master timeout. sets the maximum number of pci clocks for an initiator on the secondary bus to repeat the delayed transaction request. values: 0 = timeout after 2 15 pci clocks 1 = timeout after 2 10 pci clocks reset to 0.
section 19 fifo architecture splitting the read fifo into four 1-kb blocks ? transparent mode pci 6540 data book, version 1.0 19-4 ? 2003 plx technology, inc. all rights reserved. 19.3.1.2 setting the prefetch count 19.3.1.2.1 pci read from pci-x port for pci master reads from pci-x devices, the pci 6540 can be set up to prefetch data from the pci-x port to enhance system performance by minimizing pci access to the pci-x bus. when the pci 6540 receives a pci read command, the pci 6540 issues a read command to the pci-x port, using the programmed prefetch count specified by the following registers:  primary initial prefetch count (pitlpcnt[2:1]; pci:48h)  primary incremental prefetch count (pincpcnt; pci:4ah)  secondary initial prefetch count (sitlpcnt[2:1]; pci:49h)  secondary incremental prefetch count (sincpcnt; pci:4bh) 19.3.1.2.2 pci read from pci port for details on pci read from pci port, refer to section 18, ? pci flow-through optimization. ? 19.3.2 pci-x-to-pci memory reads after receiving the pci-x memory read command, the pci 6540 issues a pci memory read command to the pci port when the port becomes available. when sufficient data is received to read an adb boundary, the pci 6540 begins forwarding the read data to the pci-x port. if there is a mid-transaction wait period during which the pci port is not supplying the pci 6540 with sufficient data to reach the next adb boundary, the pci-x split completion cycle is disconnected so that the pci 6540 can serve another pci-x master. 19.3.3 pci-x-to-pci-x memory reads depending on the programmed outstanding adqs limit (default is 32 adqs) in the pci-x downstream and upstream split transaction registers (pcixdnstr; pci:fch and pcixupstr; pci:f8h, respectively) ? the pci 6540 issues a read command to the opposite port until the requested and pending read byte counts have reached the maximum programmed outstanding adqs limit. 19.4 splitting the read fifo into four 1-kb blocks ? transparent mode normally, the pci 6540 dynamically allocates fifo areas for each entry. by setting the buffer control split fifo enable bit (bufcr[2]=1; pci:4fh), the designer can dedicate 1 kb of fifo for each entry. this allows special applications ( such as dsp processors) to prefetch and store a fixed amount of data in the pci 6540 while awaiting processing. if the pci master requesting the data is unable to transfer the 1 kb stored in the fifo within one transaction, the pci 6540 timeout flushing mechanism can be used (refer to section 19.3.2) to preserve the data in the fifo for a programmed period of time. this allows the pci master to transfer the data in several segments. this feature may also be used to overcome latency requirements or restrictions that may apply to this bus segment.
pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 20-1 20 ? non-transparent mode 20 non-transparent mode this section provides an overview of non-transparent mode, and describes xb_mem input use to avoid initial retry latency, interrupts, and the mode power-up sequence. 20.1 overview the pci 6540 non-transparent mode allows bridging between two independent processor domains, with the host processor connected to the pci 6540 primary port. a second processor can reside on the secondary port and perform initialization, control, and i/o functions within its own domain, without interference from the primary bus host. the subsystem connected to the secondary port is not visible to the primary port host processor, and driver software operating on the host bus recognizes the presence of the non- transparent bridge and correctly manages the resources. moreover, the pci 6540 also performs address translation between the two pci ports, allowing for communication between the two domains. the pci 6540 provides three base address registers (bars) on each side of the bridge to specify which cycles are passed downstream or upstream, after being translated using the values in the address translation control registers. non-transparent mode is enabled through the trans# pin (trans#=1). the pci 6540 provides the following non-transparent capabilities:  downstream and upstream address translation  separate configuration space for primary and secondary interfaces  up to three separate address ranges that can be specified with standard bar definitions  32-bit i/o, 32-bit memory, and 64-bit memory address translation support  serial eeprom-loadable address translation registers (allowing non-transparent operation without additional software control) (refer to section 6.2.4.13)  powerful message register mechanism, doorbells, status, and events with interrupt capability to pass information from one side of the bridge to the other if a programmed serial eeprom is connected to the pci 6540, the serial eeprom contents begin loading into the pci 6540 registers upon reset removal. during this loading process, any configuration cycle from either pci port results in a retry response. depending on which port is set to a higher boot priority by the p_boot input, the lower priority boot master ? s accesses to the pci standard bars are retried, unless xb_mem=1. (refer to section 20.2 for further details.) accesses to other configuration registers are not affected. upon rstin# assertion, the port_ready status bit is cleared (dwntne[31]=0; ext:0fh or upstne[31]=0; ext:0bh, respectively) to indicate that the port is not ready for access by the controlling processor. the higher priority boot master (in general, this is the secondary port intelligent subsystem) allocates a memory and/or i/o region that can be accessed by the lower boot priority host (in general, the primary port host). at that time, the higher priority boot master sets the p_port_ready or s_port_ready bit. after this bit is set, the retried bar access configuration cycle from the lower priority boot master can proceed, and the lower priority boot master can proceed with normal pci initialization to set up the desired memory/ i/o space allocation. the pci 6540 architecture provides semaphore mechanisms that can be used to ensure exclusive access to shared registers. there are also multiple cross-bridge interrupt mechanisms available. a direct interrupt mechanism allows user-encoded messages to be written to registers that can cause interrupts. designers must decide on the definitions used in the message registers. there are also 16 doorbell registers for cross-bridge communication. port reset or power-down can also be configured to cause interrupts to the opposite port.
section 20 non-transparent mode using xb_mem input to avoid initial retry latency pci 6540 data book, version 1.0 20-2 ? 2003 plx technology, inc. all rights reserved. 20.2 using xb_mem input to avoid initial retry latency the p_port_ready or s_port_ready mechanism (which results in a retry for bar access configuration cycles if the subsystem is not set up) is disabled if the xb_mem input pin is set to high. in this case, the pci 6540 provides a hardcoded 16 mb memory space cross-bridge communication window at power-up. the pci 6540 automatically claims this 16 mb of memory space. this allows boot-up of the lower priority boot port to proceed, without waiting for the higher priority boot port to program the corresponding memory bars. when xb_mem=1 (prv_dev pin in transparent mode), the p_port_ready or s_port_ready mechanism is not relevant and bar accesses are not retried. although the default claims 16 mb, the bars can be modified by serial eeprom or software to change the window size. 20.3 interrupts message signaled interrupts (msi) are non-shared interrupts that enforce data consistency. the system guarantees that any data written by the device prior to sending the msi has reached its final destination before the interrupt service routine accesses the data. msi enables the pci 6540 to request service by writing a system-specified message to a system- specified address (pci dword memory write transaction). the transaction address specifies the message destination and the transaction data specifies the message. system software initializes the message destination and message during device configuration. 20.3.1 direct message interrupts the pci 6540 has four upstream and four downstream message registers which when written to, can generate immediate interrupts to the other side of the bridge. these are the fastest interrupt mechanisms that the pci 6540 has, and are faster in latency than standard doorbell interrupts for software applications. when a pci master needs to communicate with the host on the other side of the pci 6540 bridge, the master can use any one of the four message registers. when the master writes an encoded message into the message register, the write generates an interrupt to the host. the interrupt service routine can first read the interrupt status registers to determine which message status bit is set and read the message register to acquire the interrupt message. the service routine should then write 1 to the corresponding status bit to clear the bit. this allows the service routine to quickly react to the encoded message without polling several registers. (refer to section 6.2.4.8 for further details.) 20.3.2 doorbell interrupts the pci 6540 has 16 upstream and 16 downstream doorbell interrupt registers which when written to, can generate immediate interrupts to the other side of the bridge. when a pci master needs to communicate with the host on the other side of the pci 6540 bridge, it can make use any of the 16 doorbell interrupts. when the requesting master first writes 1, then 0 to its doorbell interrupt request bit, an interrupt is automatically generated to the host. the interrupt service routine can read the doorbell status register to find out which device is requesting the interrupt and can then inquire the corresponding device. the service routine should then write 1 to the corresponding status bit to clear the bit. (refer to section 6.2.4.10 for further details.) 20.3.3 message signaled interrupts refer to section 6.2.4.9. 20.4 non-transparent mode power-up/pci reset sequence figure 20-1 delineates the non-transparent mode power-up/pci reset sequence.
section 20 non-transparent mode power-up/pci reset sequence non-transparent mode pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 20-3 20 ? non-transparent mode figure 20-1. non-transparent mode power-up/pci reset sequence notes: 1. translation mask register values are read from serial eeprom offsets 32h to 33h and 3eh to 3fh. 2. extended registers at indexed address ch to eh (primary port) and 8h to ah (secondary port). 3. port_ready bits, at extended register indexed address fh (primary port) and bh (secondary port) are cleared upon p_rstin# and s_rstin# assertion. 4. handshaking can be achieved using direct message interrupts at registers a4h to abh. handshaking messages are user-defined status/command information. 5. translation can be enabled at extended register indexed address 0fh (primary port) and 0bh (secondary port). pci 6540 autoloads translation mask registers from serial eeprom (if available) priority boot master initializes priority boot interface configuration registers programs pri ori ty boot i nterface cross-bridge communication window size by setting translation mask registers, programs translation address registers sets i ts port_ready bi t enable translation mapping if cross-bridge handshake completes power-up or pci reset pci standard bar configuration cycles from low priority boot master are retried, all other cross-bridge traffic is target aborted pri ori ty boot port_ready bit set no low priority boot master initializes its own pci 6540 interface configuration registers yes program low priority boot interface translation address registers priority boot master sends message to low priority boot master to establish cross-bridge interface handshaking low priority boot master sends message to priority boot master to establish cross-bridge interface handshaking enable translation mapping if cross-bridge handshake completes priority boot master (typically intelligent subsystem) pci 6540 interface initialization low priority boot master (typically controlling host) pci 6540 interface initialization 1 2 3 4 3 2 4 5 5

pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 21-1 21 ? power management 21 power management this section describes the power management feature and p_pme# and s_pme# use. 21.1 overview the pci 6540 incorporates functionality that meets the requirements of pci power mgmt. r1.1 . these features include:  pci power management registers, using the enhanced capabilities port (ecp) address mechanism  support for d 0 , d 3hot and d 3cold power management states  support for d 0 , d 1 , d 2 , d 3hot and d 3cold power management states for devices behind the bridge  support for b 2 secondary bus power state when in the d 3hot power management state table 21-1 delineates the states and related actions the pci 6540 performs during power management transitions. (no other transactions are allowed.) 21.2 p_pme# and s_pme# signals in transparent mode, p_pme# and s_pme# are not used and should be tied high. in non-transparent mode, depending on their setting, p_boot, p_pme# and s_pme# are passed from the high-priority boot port to the low-priority boot port. table 21-1. states and related actions during power management transitions current state next state action d 0 d 3cold power removed from the pci 6540. a power-up reset must be performed to bring the pci 6540 to d 0 . d 0 d 3hot if enabled by the bpcc_en pin, the pci 6540 disables the secondary clocks and drives them low. d 0 d 2 during an unimplemented power state, the pci 6540 ignores the write to the power state bits (power state remains at d 0 ). d 0 d 1 d 3hot d 0 the pci 6540 enables secondary clock outputs and performs an internal chip reset. s_rstout# is not asserted. all registers are returned to the reset values and buffers are cleared. d 3hot d 3cold power removed from the pci 6540. a power-up reset must be performed to bring the pci 6540 to d 0 . d 3cold d 0 during a power-up reset, the pci 6540 performs the standard power-up reset functions.

pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 22-1 22 ? hot swap/hot plug 22 hot swap this section describes the hot swap feature and its use. 22.1 overview the pci 6540 incorporates functionality that meets picmg 2.1 r2.0 requirements with high-availability programming interface level 1 (pi=1). the compactpci hot swap register block is located at pci configuration offset e4h. refer to picmg 2.1 r2.0 for detailed implementation guidelines. the hot insertion power-up sequence recommendation is illustrated in figure 22-1. note: if the hot swap feature is not needed, eject input must be connected to logic 0. otherwise, the pci 6540 does not function. enum# and l_stat may remain unconnected. 22.2 early power support the pci 6540 incorporates early power support in the following way:  tolerates backend interface not being powered when fully powered by early power. the pci 6540 places all port pci signals ( except s_ack64#) into a high-impedance state until its corresponding rstin# signal is de-asserted.  when fully powered by backend power, the pci 6540 places all port pci signals ( except s_ack64#) into a high-impedance state until its corresponding rstin# signal is de-asserted. (refer to table 5-2, ? pin state during pwrgd, p_rstin#, s_rstin#, and device hiding, ? on page 5-9 for further details.) 22.3 hot swap signals the pci 6540 uses the following hot swap-related pins:  enum# ? output signal used to notify the system host that a board was freshly inserted or is about to be extracted. enum# is an open drain signal. enum# is asserted if the ins or ext bit is set and eim is 0 (hs_csr[7, 1]=10b or hs_csr[6, 1]=10b; pci:e6h, respectively).  l_stat ? status blue led. led is on if rstin# is asserted. led is also on when the loo bit is set (hs_csr[3]=1; pci:e6h) and rstin# is de-asserted. the led is an active high signal that allows other circuits to drive the blue led.  eject ? handle switching input. this signal should be debounced by external hardware and must be connected to logic 0, if the hot swap function is not used. this signal can cause enum# assertion. the recommended gpio pin (gpio7) is also designated for hot swap use:  healthy# (gpio7) ? used as the board healthy# output. this pin has an internal weak pull-up resistor. subsystem software can set the pin to output the desired board healthy status to the system and to control the custom logic-generated hot swap port rstin# signal. figure 22-1. hot insertion power-up sequence recommendation inactive active power not good power good no power power on in high-impedance state normal pci bus state eject-handle open eject-handle closed early power pwrgd p_clkin, s_clkin eject pci bus buffers p_rstin#, s_rstin# (s_rstout# in universal mode)
section 22 hot swap hot swap register control and status pci 6540 data book, version 1.0 22-2 ? 2003 plx technology, inc. all rights reserved. 22.4 hot swap register control and status the pci 6540 hot swap control/status register (hs_csr) is located at pci offset e6h. 22.5 avoiding initially retry or initially not responding requirement the p_port_ready or s_port_ready mechanism, which results in retry for bar access configuration cycles if the subsystem is not set up, may be disabled if the xb_mem input pin is set to high. in this case, the pci 6540 utilizes a cross-bridge communication window default of 16 mb memory space. the pci 6540 automatically claims this 16 mb of memory space, which allows boot-up of the low-priority boot port to proceed, without waiting for the priority boot port to program the corresponding memory bars. when xb_mem=1 (prv_dev pin in transparent mode), the p_port_ready or s_port_ready mechanism is not relevant and access to bars is not retried. although the default claims 16 mb, the bars can be altered by serial eeprom or software to change the window size. during reset, the pci 6540 is a not responding device. therefore, gpio7 may be used, for example , to generate healthy# control by the subsystem to control the local_pci_rst# input to the pci 6540 hot swap port. 22.6 device hiding the pci 6540 implements device hiding to eliminate mid-transaction extractions. this invokes device hiding by hardware from the hot swap port after rstin# becomes inactive and the ejector handle remains unlocked. software quiesces the pci 6540 when device hiding is invoked. the current transaction is completed as early as possible. the pci 6540 does not initiate a transaction as a master, respond as a target to i/o transactions, nor signal interrupts. when device hiding is invoked, the pci 6540 terminates the current configuration transaction by signaling a disconnect. after the current transaction completes (is disconnected), the pci 6540 does not respond as a target to any subsequent transactions until device hiding is canceled. if not participating in a transaction when device hiding is invoked, the pci 6540 does not respond as a target to subsequent transactions until device hiding is canceled. device hiding is canceled when the handle switch is relocked. 22.7 implementing hot swap controller using pci 6540 gpio pins in transparent mode, gpio[15:8] can be used to connect to the radial bd_sel# signal. gpio[7:0], which have weak internal pull-up resistors, can be used for the radial healthy# signal. enum# can be used to trigger healthy# inquiry by reading the gpio ports. 22.8 running pci-x in hot swap slots to implement the primary port to run on pci-x protocol, set p_xcap input to 1, although the standard pci-x reset initialization sequence is not available, as in hot swap case. to implement the secondary port to run on pci-x protocol, set s_xcap_in to 1. when no initialization pattern is issued during reset, pull p_xcap or s_xcap_in high to force the primary or secondary interface to run in pci-x mode, or pull these signals low to run in pci mode. in the latter case, do not connect s_xcap_pu to s_xcap_in.
pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 23-1 23 ? vpd 23 vpd this section describes the vpd feature. the pci 6540 contains the vital product data (vpd) registers, as specified in pci r2.3 . vpd information is stored in the serial eeprom device, along with autoload information. the pci 6540 provides storage of 192 bytes of vpd data in the serial eeprom device. the vpd register block is located at offsets e8h to ech in pci configuration space. vpd also uses the enhanced capabilities port address mechanism.

pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 24-1 24 ? testability/debug 24 testability/debug this section describes the jtag interface for use in testing and debugging the pci 6540. 24.1 jtag interface the pci 6540 provides a jtag boundary scan interface which can be utilized to debug a pin ? s board connectivity. 24.1.1 ieee 1149.1 test access port the ieee 1149.1 test access port (tap), commonly called the jtag (joint test action group) debug port, is an architectural standard described in ieee standard 1149.1-1990, ieee standard test access port and boundary-scan architecture. the standard describes a method for accessing internal chip facilities using a four- or five-signal interface. the jtag debug port, originally designed to support scan-based board testing, is enhanced to support the attachment of debug tools. the enhancements, which comply with ieee standard 1149.1-1990 specifications for vendor-specific extensions, are compatible with standard jtag hardware for boundary-scan system testing.  jtag signals ? jtag debug port implements the four required jtag signals ? tck, tdi, tdo, tms ? and the optional trst# signal. (refer to table 3-9 for signal descriptions.)  jtag clock requirements ? the tck signal frequency can range from dc to 10 mhz.  jtag reset requirements ? jtag debug port logic and system simultaneously reset. the two methods for placing the pci 6540 jtag tap controller into the test-logic-reset state are as follows:  upon receiving trst#, the jtag tap controller returns to the test-logic reset state  hold the pci 6540 tms pin high while transitioning the pci 6540 tck pin five times 24.1.2 jtag instructions the jtag debug port provides the standard extest, sample/preload, clamp , highz , idcode , and bypass instructions. invalid instructions behave as bypass instructions. the pci 6540 returns the idcode values listed in table 24-1. table 24-2 lists the jtag instructions, along with their input codes. table 24-1. pci 6540 jtag idcode value m s b l s b 3 1 3 0 2 9 2 8 2 7 2 6 2 5 2 4 2 3 2 2 2 1 2 0 1 9 1 8 1 7 1 6 1 5 1 4 1 3 1 2 1 1 1 0 9 8 7 6 5 4 3 2 1 0 version part number (pci 6540 when converted to decimal) plx manufacturer identity 0 0 1 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 0 0 0 0 1 0 1 1 0 0 0 1 0 1 table 24-2. jtag instructions (ieee standard 1149.1-1990) instruction input code instruction input code extest 00000b highz 00101b sample/preload 00001b idcode 00110b clamp 00100b bypass 11111b
section 24 testability/debug jtag interface pci 6540 data book, version 1.0 24-2 ? 2003 plx technology, inc. all rights reserved. 24.1.3 jtag boundary scan boundary scan description language (bsdl), ieee 1149.1b-1994, is a supplement to ieee standard 1149.1-1990 and ieee 1149.1a-1993, ieee standard test access port and boundary-scan architecture . bsdl, a subset of the ieee 1076-1993 standard vhsic hardware description language (vhdl), allows a rigorous description of testability features in components which comply with the standard. automated test pattern generation tools use bdsl for package interconnect tests and electronic design automation (eda) tools for synthesized test logic and verification. bsdl supports robust extensions that can be used for internal test generation and to write software for hardware debug and diagnostics. the primary components of bsdl include the logical port description, physical pin map, instruction set, and boundary register description. the logical port description assigns symbolic names to the pci 6540 pins. each pin has a logical type of in, out, in out, buffer, or linkage that defines the logical direction of signal flow. the physical pin map correlates the pci 6540 logical ports to the physical pins of a specific package. a bsdl description can have several physical pin maps; each map is given a unique name. instruction set statements describe the bit patterns that must be shifted into the instruction register to place the pci 6540 in the various test modes defined by the standard. instruction set statements also support descriptions of instructions that are unique to the pci 6540. the boundary register description lists each of its cells or shift stages. each cell has a unique number ? the cell numbered 0 is the closest to the test data out (tdo) pin and the cell with the highest number is closest to the test data in (tdi) pin. each cell contains additional information, including:  cell type  logical port associated with the cell  logical function of the cell  safe value  control cell number  disable value  result value 24.1.4 jtag reset input trst# the trst# input pin is the asynchronous jtag logic reset. trst# assertion causes the pci 6540 tap controller to initialize. in addition, when the tap controller is initialized, it selects the pci 6540 normal logic path (core-to-i/o). take the following into consideration when implementing the asynchronous jtag logic reset on a board:  if jtag functionality is required, one of the following should be considered:  use the trst# input signal low-to-high transition once.  hold the pci 6540 tms pin high while transitioning the pci 6540 tck pin five times.  if jtag functionality is not required, the trst# signal must be directly connected to ground. note: ieee standard 1149.1-1990 requires pull-up resistors on the tdi, tms, and trst# pins. to remain pci r2.3-compliant, no internal pull-up resistors are provided on jtag pins in the pci 6540; therefore, the pull-up resistors must be externally added to the pci 6540 when implementing jtag.
pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 25-1 25 ? electrical specs 25 electrical specs this section presents the pci 6540 electrical specifications. 25.1 general electrical specifications the ratings provided in this subsection are those above which the useful life of the pci 6540 may be impaired. use heatsinks when operating in a 133 mhz environment. table 25-1 lists the pci 6540 maximum ratings. table 25-2 lists the pci 6540 functional operating range. table 25-3 lists the pci 6540 dc electrical characteristics. caution: stresses greater than the maximums listed in table 25-1 cause permanent damage to the pci 6540. this is a stress rating only and functional operation of the pci 6540 at or above those indicated in the operational sections of this data book is not implied. exposure to absolute maximum rating conditions for extended periods of time may affect reliability. table 25-1. maximum ratings parameter minimum maximum parameter minimum maximum storage temperature range -55 c +125 c maximum voltage to signal pins ? 5.5v junction temperature ? +125 c maximum power ? 3.0w v dd_io supply voltage ? 3.9v maximum v dd_io power (output load dependent) ? 1.2w v dd_core supply voltage ? 3.0v maximum v dd_core power ? 1.8w analog v dd supply voltage ? 3.0v maximum analog v dd power ? 50 mw table 25-2. functional operating range parameter minimum maximum parameter minimum maximum v dd_io supply voltage 3.0v 3.6v analog v dd supply voltage 2.25v 2.75v v dd_core supply voltage 2.25v 2.75v operating ambient temperature 0 c 70 c
section 25 electrical specs general electrical specifications pci 6540 data book, version 1.0 25-2 ? 2003 plx technology, inc. all rights reserved. table 25-3. dc electrical characteristics symbol parameter condition minimum maximum unit notes v dd_io v dd_io supply voltage ? 3.0 3.6 v v dd_core p/s_a vdd v dd_core , p/s_a vdd ? 2.25 2.75 v v ih input high voltage ? 0.5 v dd_io v dd_io v v il input low voltage ? -0.5 +0.3 v dd_io v v ol output low voltage i iout = +1500 a ? +0.1 v dd_io v v oh output high voltage i iout = -500 a 0.9 v dd_io ? v i il input leakage current 0 < v in < v dd_io ? 2 a c in input pin capacitance ?? 7.0 pf
section 25 pll and clock jitter electrical specs pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 25-3 25 ? electrical specs 25.2 pll and clock jitter the pci 6540 uses one pll for the primary interface and one pll for the secondary interface. these plls can be individually disabled by connecting their corresponding p_pllen# or s_pllen# pin to 1. during slow speed applications for a port where pll should be disabled (for example, at 33 mhz), set the corresponding p_pllen# or s_pllen# input to high. the pll is sensitive to power and ground noise. dedicated and nearby pll power and ground pins help prevent malfunctions caused by potentially large power and/or ground bounce. to eliminate this problem, connect the pll v dd pins to a clean 2.5v supply. table 25-4. pll and clock jitter parameters parameter minimum typical maximum unit condition input frequency 50 ? 133 mhz ? input rise and fall time ? ? 500 ps ? input cycle-to-cycle jitter -100 ? +100 ps ? input jitter modulation frequency must be < 100 khz to allow pll tracking or > 30 mhz to allow pll filtering output cycle-to-cycle jitter -150 ? +150 ps clean power v dd = 2.5v output duty cycle 45 ? 55 % clean power v dd = 2.5v phase lock time ? ? 100 s clean power v dd = 2.5v pll power dissipation ? 9 25 mw clean power v dd = 2.5v f in = f out = 133 mhz operating temperature -40 ? +125 c ?
section 25 electrical specs pci-x/pci signal timing specification pci 6540 data book, version 1.0 25-4 ? 2003 plx technology, inc. all rights reserved. 25.3 pci-x/pci signal timing specification figure 25-1 illustrates the pci 6540 signal timing specifications. table 25-5 delineates the minimum and maximum values, for 133 mhz pci-x and 66 mhz pci, for the symbols that appear in figure 25-1. figure 25-1. pci-x/pci signal timing specification note: refer to pci-x r1.0b for detailed descriptions of the symbols that appear in figure 25-1. v test clk output t val t su t on input t h t off valid valid table 25-5. 133 mhz pci-x and 66 mhz pci signal timing for figure 25-1 symbol parameter 133 mhz pci-x 66 mhz pci unit minimum maximum minimum maximum t val clk to signal valid delay ? bused signals 0.7 3.8 2 6 ns t val(ptp) clk to signal valid delay ? point to point 0.7 3.8 2 6 ns t on float to active delay 0 ? 2 ? ns t off active to float delay ? 7 ? 14 ns t su input setup time to clk ? bused signals 1.2 ? 3 ? ns t su(ptp) input setup time to clk ? point to point 1.2 ? 5 ? ns t h input signal hold time from clk 0.5 ? 0 ? ns v test voltage test ? 0.4 ? 0.4 v dd
pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 26-1 26 ? mechanical specs 26 mechanical specs this section provides the pci 6540 mechanical dimensions and pinout. 26.1 mechanical dimensions the pci 6540 uses an industry standard 27 x 27 mm 380-pin (ball) pbga. figure 26-1 illustrates the mechanical dimensions. table 26-1 lists the mechanical dimensions, in millimeters, unless specified otherwise. figure 26-1. pci 6540 mechanical dimensions e e2 e3 pin a1 corner topside view underside view a2 a a1 c 0 cross-section view e1 e b pin a1 corner a b c d e f g h j k l m n p r t u v w y 2019181716151413121110987654321
section 26 mechanical specs mechanical dimensions pci 6540 data book, version 1.0 26-2 ? 2003 plx technology, inc. all rights reserved. table 26-1. pci 6540 mechanical dimensions symbol dimension minimum nominal maximum a overall package height 2.20 2.33 2.50 a1 package standoff height ? 0.60 ? a2 encapsulation thickness 1.12 1.17 1.22 b ball diameter ? 0.75 ? c substrate thickness 0.51 0.56 0.61 e ball pitch ? 1.27 ? e overall package width 26.80 27.00 27.20 e1 ?? 24.13 ? e2 overall encapsulation width 23.80 24.00 24.20 e3 ? 17.95 18.00 18.05 ?? 30 ?
section 26 mechanical dimensions mechanical specs pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 26-3 26 ? mechanical specs this page intentionally left blank.
section 26 mechanical specs pinout pci 6540 data book, version 1.0 26-4 ? 2003 plx technology, inc. all rights reserved. 26.2 pinout figure 26-2. pci 6540 physical layout with pinout ? topside view (a1 ? a10 through y1 ? y10) 1 2345678910 a vss gpio15 gpio13 gpio10 gpio7 s_ad31 s_ad27 s_idsel s_ad21 s_ad17 b s_req0# gpio14 gpio12 gpio9 gpio6 s_ad30 s_ad26 s_cbe3# s_ad20 s_ad16 c s_req2# s_req1# vdd_io gpio8 gpio5 s_ad29 s_ad25 s_ad23 vss s_cbe2# d s_req5# s_req4# s_req3# gpio11 gpio4 s_ad28 s_ad24 s_ad22 s_ad19 s_frame# e s_gnt0# reserveio1 s_req7# s_req6# vss s_pllen# nc vdd_core s_ad18 s_irdy# f s_gnt4# s_gnt3# s_gnt2# s_gnt1# s_cr s_avss s_avdd vdd_core vdd_io vdd_io g reserveio2 s_gnt7# s_gnt6# s_gnt5# s_avss s_avdd vdd_core vdd_io vss vss h s_xcap_pu s_rstout# s_rstin# s_cfn# vdd_core vdd_core vdd_io j msk_in bpcc_en vss prv_dev (transparent) xb_mem (non-transparent) s_clkin vdd_io vss vss vss k s_clko2 s_clko1 s_clko0 s_clkoff s_clkin_stb vdd_io vss vss vss l p_rstout# p_rstin# vdd_io s_clko4 s_clko3 vdd_io vss vss vss m gpio0 gpio1 vss gpio2 gpio3 vdd_io vss vss vss n oscsel# p_xcap pwrgd p_clkin s_xcap_in vdd_core vdd_io p p_req# refclk oscin p_gnt# p_avss p_avdd vdd_core vdd_io vss vss r p_ad29 p_ad30 vdd_io p_ad31 p_clkoe p_avss p_avdd vdd_core vdd_io vdd_io t p_ad25 p_ad26 p_ad27 p_ad28 vss p_cr p_pllen# vdd_core p_devsel# p_serr# u p_ad23 p_idsel p_cbe3# p_ad24 tms eject p_boot p_cbe2# p_stop# p_par v p_ad21 p_ad22 vdd_io tdi trans# vdd_io p_ad18 p_frame# vss p_cbe1# w p_ad19 p_ad20 tdo dev64# u_mode l_stat p_ad17 p_irdy# p_lock# p_ad15 y vss tck trst# eepdata eepclk enum# p_ad16 p_trdy# p_perr# p_ad14 1 2345678910
section 26 pinout mechanical specs pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. 26-5 26 ? mechanical specs figure 26-3. pci 6540 physical layout with pinout ? topside view (a11 ? a20 through y11 ? y20) 11 12 13 14 15 16 17 18 19 20 s_trdy# s_serr# s_ad14 s_ad10 s_ad7 s_ad4 s_ad0 s_cbe7# s_cbe5# vss a s_devsel# s_par s_ad13 s_ad9 s_ad6 s_ad3 s_ack64# s_cbe6# s_cbe4# s_ad63 b s_stop# vss s_ad12 s_ad8 vdd_io s_ad2 s_req64# vdd_io s_ad61 s_ad62 c s_lock# s_cbe1# s_ad11 s_cbe0# s_ad5 s_ad1 s_ad57 s_ad58 s_ad59 s_ad60 d s_perr# s_ad15 vdd_core s_tst1 s_tst0 vss s_ad53 s_ad54 s_ad55 s_ad56 e vdd_io vdd_io vdd_core nc test nc s_ad50 vdd_io s_ad51 s_ad52 f vss vss vdd_io vdd_core nc nc s_ad46 s_ad47 s_ad48 s_ad49 g vdd_io vdd_core vdd_core s_ad42 s_ad43 s_ad44 s_ad45 h vss vss vss vdd_io s_ad38 s_ad39 vss s_ad40 s_ad41 j vss vss vss vdd_io s_ad33 s_ad34 s_ad35 s_ad36 s_ad37 k vss vss vss vdd_io s_m66en s_pme# s_clkrun# (transparent) s_inta# (non-transparent) s_par64 s_ad32 l vss vss vss vdd_io p_par64 p_clkrun# (transparent) p_inta# (non-transparent) vss p_pme# p_m66en m vdd_io vdd_core vdd_core p_ad35 p_ad34 p_ad33 p_ad32 n vss vss vdd_io vdd_core nc nc p_ad39 p_ad38 p_ad37 p_ad36 p vdd_io vdd_io vdd_core nc nc nc p_ad42 vdd_io p_ad41 p_ad40 r p_ad13 p_ad8 vdd_core p_tst1 p_tst0 vss p_ad46 p_ad45 p_ad44 p_ad43 t p_ad12 p_cbe0# p_ad5 p_ad1 p_cbe7# p_cbe4# p_ad60 p_ad54 p_ad48 p_ad47 u p_ad11 vss p_ad4 p_ad0 vdd_io p_ad63 p_ad59 vdd_io p_ad51 p_ad49 v p_ad10 p_ad7 p_ad3 p_ack64# p_cbe6# p_ad62 p_ad58 p_ad55 p_ad52 p_ad50 w p_ad9 p_ad6 p_ad2 p_req64# p_cbe5# p_ad61 p_ad57 p_ad56 p_ad53 vss y 11 12 13 14 15 16 17 18 19 20

pci 6540 data book, version 0.993 ? 2003 plx technology, inc. all rights reserved. a-1 a ? using pci 6540 a using pci 6540 figure a-1. pci 6540 internal architecture serial eeprom interface clock buffers gpios internal bus arbiter reset upstream buffers posted-write fifo 4 entries delayed transaction fifo 4 entries flow-through control delayed transaction fifo 4 entries posted write fifo 4 entries downstream buffers configuration space upstream downstream primary bus secondary bus
appendix a using pci 6540 transparent mode application pci 6540 data book, version 0.993 a-2 ? 2003 plx technology, inc. all rights reserved. a.1 transparent mode application because the pci 6540 primary and secondary ports are asynchronous to one another, these two independent systems can run at differing frequencies. the secondary bus may be run faster than the primary bus, and vice versa. the pci 6540 can be set to enforce pci-x protocol, without requiring standard pci-x reset initialization. the pci 6540 controls powerful programmable buffers, which can be used to regulate data throughput for multiple pci masters on the secondary port. the fifo can be divided into four independent segments, each dedicated to its corresponding entry. the pci 6540 can be programmed to prefetch up to 2 kb at a time and the data can be stored in the fifo without being flushed until timed out. this allows the pci 6540 to truly prefetch data on behalf of pci devices, with minimum bus bandwidth requirement on the pci-x bus. in transparent mode, the host system pci-x bus is connected to the pci 6540 primary port. the secondary pci port can use a custom-designed external arbiter or the pci 6540 internal arbiter. use the custom-designed clock generations, pci 6540 s_clko[4:0] outputs (derived out of the primary port pci clock input), or an external oscillator (to provide clocks to secondary pci devices and pci 6540 s_clkin). the pci 6540 also supports private pci devices on the secondary bus. by setting prv_dev to 1, the pci 6540 allows secondary port idsel rerouting, using s_ad[23:16] to s_ad24. when s_ad24 has no device connected to it, s_ad[23:16] type 1 access cycles are master aborted. by setting prv_dev to 1, and programming the corresponding special memory range registers, the pci 6540 also reserves a private memory region for secondary port private device use only. the pci 6540 does not respond to accesses to this private region by primary or secondary pci masters. figure a-2 provides basic optimization design. figure a-2. pci 6540 transparent mode basic optimization design s-port pci 6540 p-port host system backplane secondary bus pci-x/pci devices + private devices trans# = 0 u_mode = x prv_dev = optional 0 or 1 s_cfn# = optional 0 or 1 p_boot = x s_clko[4:0] = use optional s_rstout# = used p_rstout# = not used enforce pci-x: pci 6540 has a p_xcap input pin to enforce pci-x protocol without requiring standard pci-x reset initialization
appendix a non ? transparent mode application using pci 6540 pci 6540 data book, version 0.993 ? 2003 plx technology, inc. all rights reserved. a-3 a ? using pci 6540 a.2 non ? transparent mode application the pci 6540 non-transparent mode acts as a memory-mapped pci-x device on a pci-x backplane. the pci 6540 primary bus is used to connect to the pci-x backplane, such as for transparent mode applications. the intelligent subsystem is connected to the secondary port. the subsystem can use another external arbiter or the pci 6540 internal arbiter. subsystem clock generation is generally achieved using a clock synthesizer to provide cpu clocks, subsystem pci-x clocks to subsystem pci-x devices and the pci 6540 s_clkin. the subsystem can also use the pci 6540 s_clko[4:0] outputs derived from the primary port pci-x clock input or an external oscillator. program the p_boot pin to 0, so the subsystem at the secondary port retains higher boot priority. the subsystem must set up the bars first, or the xb_mem option must be active, for the primary port host to be able to complete its system initialization sequence. use of the xb_mem option forces the pci 6540 to declare a fixed 16 mb memory window for cross-bridge communication at power-up. if necessary, this window size can be changed by the serial eeprom or software after power-up. primary and secondary ports retain independent pci-x reset inputs. custom-designed reset or pci 6540 s_rstout# can be used for the secondary port and subsystem reset. figure a-3 provides basic optimization design. figure a-3. pci 6540 non-transparent mode basic optimization design s-port pci 6540 p-port compactpci backplane subsystem p_req# and s_gnt[7:0]# p_clkin p_rstin# p_inta# trans# = 1 u_mode = 0 xb_mem = optional 0 or 1 s_cfn# = optional 0 or 1 p_boot = 0 s_req0# and s_gnt0# = used s_req[7:1]# and s_gnt[7:1]# = use optional s_clko[4:0] = use optional s_rstout# = use optional p_rstout# = not used
appendix a using pci 6540 universal bridging application pci 6540 data book, version 0.993 a-4 ? 2003 plx technology, inc. all rights reserved. a.3 universal bridging application the pci 6540 is designed to allow an intelligent subsystem design to operate as a host or memory-mapped device by setting the u_mode (universal mode) pin to 1. when operating as a host, the intelligent subsystem uses universal transparent mode. the subsystem pci-x bus is connected to the pci 6540 primary port. the subsystem uses an external arbiter or an arbiter built-in to the north bridge for subsystem pci-x bus support. the backplane pci-x arbiter can use a custom-designed arbiter or the pci 6540 internal arbiter. subsystem clock generation is generally achieved using a clock synthesizer to provide cpu clocks, subsystem pci-x clocks to subsystem pci-x devices, and the pci 6540 p_clkin. use custom- designed clock outputs, the pci 6540 s_clko[4:0] outputs derived out of the primary port pci-x clock input, or an external oscillator (to drive the pci-x backplane). when operating as an intelligent subsystem, behaving as a memory-mapped pci-x device on the backplane pci-x bus, the subsystem uses universal non-transparent mode. the pci 6540 external arbiter mode is selected so that s_req0# and s_gnt0# function as pci_req# and pci_gnt#, respectively, for direct connection to the backplane or custom-designed arbiter interface. connect the p_boot pin to 1, indicating that the primary port has boot priority. the subsystem at the primary port must set up the bars first, or the xb_mem option must be active for the host from the secondary port to be able to complete the system initialization sequence. use of the xb_mem option forces the pci 6540 to declare a fixed 16 mb memory window for cross-bridge communication at power-up. if necessary, the window size can be changed by the serial eeprom or software after power-up. figure a-4 illustrates a basic optimization design, assuming the same cpu board is behaving differently. figure a-4. pci 6540 universal bridging application basic optimization design subsystem built-in arbiter built-in clock generations p-port pci 6540 s-port p-port pci 6540 s-port trans# = pull high u_mode = 1 xb_mem = optional 0 or 1 s_cfn# = x p_boot = 1 p_rstout# = use optional s_clko[4:1] = not used s_clkin = not used compact pci backplane same cpu board functioning as subsystem for use in peripheral slot same cpu board functioning as host for use in system slot subsystem built-in arbiter built-in clock generations s_req[7:0]# and s_gnt[7:0]# or custom arbiter s_clko[4:0] or custom clock generations s_rstout# or custom reset generation s_req0# and s_gnt0# s_clko0 functions as clock input s_rstout# functions as reset input s_inta# s_rstin# = not used, pull high u_mode = 1 trans# = 0 xb_mem = 0 s_cfn# = optional 0 or 1 p_boot = x s_clkin = feed from s_clko4 or custom clock generations s_rstout# = used to drive slots and feedback to secondary interface s_rstin# = not used, pull high
appendix a universal bridging application using pci 6540 pci 6540 data book, version 0.993 ? 2003 plx technology, inc. all rights reserved. a-5 a ? using pci 6540 a.3.1 universal mode clk, rst#, req0#, gnt0#, and sysen# signal connections the pci 6540 allows a jumperless automatic switch between compactpci system slot or peripheral slot applications. in universal mode, the pci 6540 switches between system and peripheral mode using the trans# input pin, which is designed for direct connection to the compactpci sysen# pin. when trans# is 0, the pci 6540 switches to universal transparent mode, in which the pci 6540 drives out s_rstout# to the backplane, and enables use of the s_rstout# internal feedback for secondary reset. secondary port logic uses s_clkin. for example, use s_clko4 to feed s_clkin with a clock trace length that matches the backplane clock traces length. if a custom-designed arbiter is not used, s_req0# and s_gnt0# can be directly connected to the backplane. when trans#=1, the pci 6540 switches to universal non-transparent mode, in which the pci 6540 places s_rstout# into a high-impedance state to allow the backplane rst# signal to drive the s_rstout# pin (which acts as secondary reset input). the s_clkin pin is ignored inside the pci 6540 and secondary port logic uses the s_clko0 internal feedback as a secondary clock input. s_cfn# is don ? t care and if a custom-designed arbiter is not used, s_req0# and s_gnt0# can be directly connected to the backplane. hot swap pin enum# must be controlled with custom logic for universal applications. figure a-5 and table a-1 provide an example of universal mode connections. in this example, u_mode=1. figure a-5. universal mode connections example pci 6540 s-port (u_mode = 1, use pci 6540 internal arbiter as example) backplane connector s_clko0 s_rstout# s_req0# s_gnt0# trans# clk0 rst# req0# gnt0# sysen#
appendix a using pci 6540 universal bridging application pci 6540 data book, version 0.993 a-6 ? 2003 plx technology, inc. all rights reserved. table a-1. universal mode connection example description pin trans# connected to compactpci sysen# pin u_mode s_cfn# s_clko0 s_clkin s_clko4 s_rstin# s_rstout# s_req0# s_gnt0# system slot application using pci 6540 internal arbiter 0 use s_clkin as secondary port input clock 10output input, such as from s_clko4 output not used output req0# input gnt0# output system slot application using external arbiter 0 use s_clkin as secondary port input clock 11output input, such as from s_clko4 output not used output custom arbiter backplane req# output custom arbiter backplane gnt# input peripheral slot application using pci 6540 universal mode 1 use s_clko0 as secondary port input clock 1x used as secondary clock input ignored in pci 6540 not used output not used not used used as secondary reset input backplane req# output backplane gnt# input
appendix a symmetrical non-transparent application using pci 6540 pci 6540 data book, version 0.993 ? 2003 plx technology, inc. all rights reserved. a-7 a ? using pci 6540 a.4 symmetrical non-transparent application the pci 6540 is designed to allow the bridging of two totally independent systems. the only required option is to decide which host has higher boot priority. the pci 6540 external arbiter mode is selected so that s_req0# and s_gnt0# function as pci gnt# and pci-x req#, respectively, for handshaking with one of the host. all pci signals should be connected to their respective host pci-x signals. boot priority is programmable. the higher priority boot system must set up the bars first, or the xb_mem option must be active, for the lower boot priority system to be able to complete its system initialization sequence. use of the xb_mem option forces the pci 6540 to declare a fixed 16 mb memory window for cross-bridge communication at power-up. if necessary, this window size can be changed by the serial eeprom or software after power-up. the independent system uses an external arbiter or the north bridge internal arbiter for pci-x bus use. system clock generation is generally achieved using a clock synthesizer to provide cpu clocks, pci-x clocks to system pci-x devices and the pci 6540 pci-x input. because the pci 6540 primary and secondary ports are asynchronous to one another, the two independent systems can run at differing frequencies. figure a-6 provides basic optimization design. figure a-6. pci 6540 symmetrical non ? transparent application basic optimization design p-port pci 6540 s-port independent system built-in arbiter built-in clock generations independent system built-in arbiter built-in clock generations trans# = 1 u_mode = 0 xb_mem = optional 0 or 1 s_cfn# = 1 p_boot = programmable prv_dev = optional p_rstout# = not used s_rstout# = not used s_req[7:0]# and s_gnt[7:0]# = not used s_clko[4:0] = not used p_inta# and s_inta# = used

pci 6540 data book, version 0.993 ? 2003 plx technology, inc. all rights reserved. b-1 b ? pci-x clock app note b pci-x clock and frequency initialization sequence b.1 bus speed and type detection figure b-1 provides an example of a cpld being used to detect bus type and speed and feed to the pci 6540 during the reset phase. figure b-1. cpld used to detect bus type and speed and feed to pci 6540 during reset phase cpld clock generator primary pci reset m66en# pcixcap s_clkoff sclk_in sclko_0 clko_ n clko_1 pci 6540 s_rstout# clko_0 pci 6540 p_rstin# pci 6540 gpio13 (pci-x 100 mhz) pci 6540 s_xcap_pu pci 6540 s_xcap_in s_m66en# oe# backplane clock buffer pci 6540
appendix b pci-x clock and frequency initialization sequence secondary clock outputs pci 6540 data book, version 0.993 b-2 ? 2003 plx technology, inc. all rights reserved. b.1.1 universal transparent mode because of the differences between standard pci-x and compactpci pci-x bus speed and bus type detection scheme, a custom programmable logic is required to detect compactpci pci-x speed. after detection, such custom logic is needed to emulate the standard pci-x bus speed and bus type feedback to the pci 6540. figure b-2 provides an example of this process. figure b-2. bus mode detecting sequence b.1.2 universal non-transparent mode the pci 6540 detects pci-x mode from the pci bus when s_rstout# is de-asserted during a cold boot. b.2 secondary clock outputs note: secondary clocks from the pci 6540 are not recommended for pci-x use. use high-quality clock buffers for pci-x applications. a high-quality clock generator and clock buffer should be used for 100 and 133 mhz pci-x applications. all clocks must have similar flight time, no matter whether they are connected to secondary port pci-x devices or used for feedback to the pci 6540 ( that is , all clock traces are to be of similar length or are delay compensated). b.3 internal clock divider the pci 6540 internal clock divider works with pci only applications. for pci-x applications, do not use the divider. b.4 pci-x in universal mode s_clko0 pin use the pci 6540 uses different clock inputs in a system slot than those it uses in a peripheral slot. in system slot applications, the pci 6540 uses s_clkin as the clock source for all internal logic. in peripheral slot applications, the pci 6540 uses the s_clko0 pin as the clock input source for all internal logic. stage 1: cpld acquires bus speed information from backplane stage 2: pci 6540 acquires bus speed information from cpld stage 3: pci 6540 reports bus speed information to pci bus in backplane primary pci reset pci 6540 p_rstin# pci 6540 s_rstout# 1 2 3
pci 6540 data book, version 0.993 ? 2003 plx technology, inc. all rights reserved. c-1 c ? pin comparison app note c pci 6520bb and pci 6540bb pin comparison c.1 overview the following is extrapolated from pci 6520bb and pci 6540bb pin comparison version 1.3 , an application note, published october 30, 2003, by plx technology, inc. table c-1. part number conversion hint part number plx part number hb7-ab pci6520-bb13bc hb8-bb PCI6540-BB13BC table c-2. pci 6520bb versus pci 6540bb pin assignment comparison pin location pci 6520bb pci 6540bb u6 reserved v ss eject y6 no connection enum# a4 reserved io3 gpio10 d4 reserved io4 gpio11 b3 reserved io5 gpio12 a3 pci-x 100 mhz 1 gpio13 / pci-x 100 mhz b2 reserved io6 gpio14 a2 reserved io7 gpio15 c4 reserved io8 gpio8 b4 reserved io9 gpio9 w6 reserved io10 l_stat u7 no connection p_boot m19 no connection p_pme# l17 no connection s_pme# l1 no connection p_rstout# n2 reserved v ss p_xcap a8 reserved v ss s_idsel
appendix c pci 6520bb and pci 6540bb pin comparison pci 6540 data book, version 0.993 c-2 ? 2003 plx technology, inc. all rights reserved. h3 reserved v dd_io s_rstin# v5 reserved v ss trans# w5 reserved v ss u_mode f15 no connection test 1. revision 1.0 of this document mistakenly listed pci 6520 pin a3 as no connection. table c-2. pci 6520bb versus pci 6540bb pin assignment comparison (continued) pin location pci 6520bb pci 6540bb
pci 6540 data book, version 0.993 ? 2003 plx technology, inc. all rights reserved. d-1 d ? ordering d general information the pci 6540 is a 64-bit, 133 mhz pci-x-to-pci-x bridge that supports both transparent and non-transparent operation. the pci 6540 provides a range of added-value features to system designers, including:  two pci-x ports, each capable of running at the full 64-bit, 133 mhz speed  asynchronous primary and secondary ports  universal mode operation, allowing the same card to be both a system card or a peripheral card in a compactpci chassis  5v tolerant i/o  programmable prefetch  programmable flow through  zero wait state burst  10-kb data fifo  five secondary clock outputs  reference clock input for frequency detection  pci power management support  arbitration support for eight secondary bus masters  serial eeprom for configuration  16 general purpose i/o pins  compactpci hot swap ready  vital product data (vpd) support  jtag boundary scan the pci 6540 is offered in a 380-pin (ball) pbga, and is designed to operate over the commercial temperature range. d.1 ordering table d-1. available package package ordering part number 380-pin pbga PCI6540-BB13BC pci 6540-bb13bc pci 6540 ? family/core pci 6540 device bb ? part revision code 13 ? speed grade ( 133 mhz pci-x bus) b ? package type b=plasticballgridarray c ? case temperature i = industrial temperature c = commercial temperature es = engineering sample
appendix d general information united states and international representatives, and distributors pci 6540 data book, version 0.993 d-2 ? 2003 plx technology, inc. all rights reserved. d.2 united states and international representatives, and distributors a list of plx technology, inc., representatives and distributors can be found at http://www.plxtech.com. d.3 technical support plx technology, inc., technical support information is listed at http://www.plxtech.com/support/, or call 408 774-9060 or 800 759-3735.
pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. index-1 index index a abnormal termination 17-2 abort master 3-5, 3-7, 3-9, 3-12, 3-25, 6-5, 6-10, 6-15, 6-16, 6-32, 6-34, 6-64, 6-74, 6-82, 6-103, 6-104, 8-9, 8-11, 8-12, 8-12 ? 8-13, 8-14, 8-16, 8-18, 9-1, 9-2, 9-4, 9-9, 9-11, 9-16, 9-17, 9-18, 10-5, 12-6, 13-2, 17-1, 17-2, a-2 target 3-7, 3-12, 6-5, 6-10, 6-15, 6-32, 6-34, 6-64, 6-73, 6-74, 6-82, 6-103, 6-104, 8-3, 8-4, 8-7, 8-12, 8-13, 8-14, 8-15, 8-16, 8-18, 9-3, 9-4, 9-8, 9-9, 9-16, 9-18, 9-19, 12-1, 12-2, 12-4, 12-6, 13-2 abort, target 9-17 access, exclusive 13-1 ? 13-2 acntrl register 6-17, 6-28, 6-128, 14-1, 14-2 adb 9-4 ? 9-21, 19-2 address decoding 10-1 ? 10-12 address translation control registers 6-42 ? 6-50, 6-120 ? 6-126, 10-5, 10-11, 20-1 allowable disconnect boundary see adb arbiter control registers 6-2, 6-16 ? 6-17, 6-99, 6-127 ? 6-128, 14-1 arbitration, pci 14-1 ? 14-3 architectural boundary scan see ieee standard attributes 9-1, 9-2, 9-3, 9-4, 9-6 ? 9-7, 9-8, 9-9, 9-11, 9-11 ? 9-13, 9-14, 9-19 ? 9-20 relaxed ordering bit 11-4, 11-6 b bcntrl register 5-8, 6-14 ? 6-15, 6-17, 6-19, 6-82, 6-128, 19-3 boundary scan description language 24-2 pins 3-2, 3-18 bpcc_en 3-21, 5-9 bridge behavior 17-1 ? 17-3 control register 6-2, 6-14 ? 6-15, 6-81, 6-82 ? 6-83 pci 6000 series 1-2 ? 1-3 pci-x status register 6-3, 6-58, 6-99, 6-135 supports extension register 6-3, 6-53, 6-99, 6-131 bsdl 24-2 bufcr register 6-27, 6-93, 19-3, 19-4 buffer control register 6-2, 6-27, 6-81, 6-93 buffers adb size 9-4 i/o 24-2 multiple write transactions 8-5 bus operation pci 8-1 ? 8-18 pci-x 9-1 ? 9-21 c cap_ptr register 6-5, 6-14, 6-64, 6-70, 6-73, 6-79 ccntrl register 3-25, 6-16, 6-36, 6-81, 6-117, 6-127, 8-5, 10-5 chip control registers 3-25, 6-2, 6-16 ? 6-17, 6-36, 6-81, 6-99, 6-127 ? 6-128, 8-5 clkcntrl register 3-2, 3-13, 3-15, 4-1, 5-6, 6-34, 6-102 clkrun register 6-35 clock control register 6-102 clock, pci-x b-1 ? b-2 clocking 4-1 ? 4-4 clock-related pins 3-2, 3-13 ? 3-15 commands 16-1 ? 16-4 conventional pci-to-pci-x 9-20 pci-x register 6-134 pci-x-to-conventional pci 9-21 primary 3-5, 6-2, 6-61 primary pci register 6-4, 6-63 read queue 2-2 secondary 3-8, 3-9, 6-61 secondary pci register 6-72 serial eeprom 6-95, 7-1 compactpci hot swap see hot swap completion delayed read 8-7 ? 8-8 delayed write 11-2 split 9-1 ? 9-19 control registers 2-1, 6-16 ? 6-17, 6-127 ? 6-128, 8-6 controller, test access port (tap) see test access port controller cross-bridge configuration access control registers 6-100 ? 6-101 memory window enable 3-25 d dac 3-4, 3-8, 8-1, 8-2, 9-2, 9-5, 9-9, 9-10, 9-19, 16-2, 16-4 dcntrl register 3-16, 5-7, 5-8, 6-17, 6-128 deadlock 11-1, 11-2, 11-4 ? 11-6 debug 24-1 ? 24-2 decoding 10-1 ? 10-12 decoupling, power supply 3-3 delayed write 3-7, 3-12, 6-20, 6-32, 6-34, 6-86, 6-103, 6-104, 6-105, 8-2, 8-4, 8-5, 8-12, 8-14, 8-17, 8-18, 11-1, 11-2, 11-3, 12-3, 12-5, 12-6, 12-8, 12-10, 12-12
dev64# to initialization pci 6540 data book, version 1.0 index-2 ? 2003 plx technology, inc. all rights reserved. dev64# 3-21, 5-9, 6-29, 6-58, 6-95, 6-135 device hiding 5-9 ? 5-13, 6-54, 6-132, 22-2 diagnostic control registers 3-16, 5-6, 5-7, 6-16 ? 6-17, 6-127 ? 6-128 direct message interrupt registers 5-6, 6-110 ? 6-111, 20-2 doorbell interrupt registers 6-99, 6-114 ? 6-116, 20-1, 20-2 dual address cycle see dac dwnbar0msk register 6-49, 6-67, 6-125, 7-4, 10-9, 10-11 dwnbar1msk register 6-43, 6-48, 6-49, 6-68, 6-69, 6-124, 6-125, 7-4, 10-9, 10-11 dwnbar2msk register 6-50, 6-69, 6-125, 7-4, 10-9, 10-11 dwndbie register 6-114 dwndbir register 6-114 dwndbis register 6-115 dwninte register 5-6, 6-116 dwnintsr register 5-6, 6-111, 6-115 dwnmsg0 register 6-111 dwnmsg1 register 6-111 dwnmsg2 register 6-111 dwnmsg3 register 6-111 dwntnbar0 register 6-48, 6-124, 7-4, 10-12 dwntnbar1 register 6-48, 6-124, 10-9, 10-12 dwntnbar2 register 6-48, 6-124, 10-9, 10-12 dwntne register 6-50, 6-126, 7-4, 10-10, 10-12, 20-1 e early power support 22-1 ecp 21-1 eepaddr register 6-30, 6-96, 7-1 eepclk 3-18, 5-9, 7-1 eepcntrl register 6-29, 6-95, 7-1 eepdata pin 3-18, 5-9, 7-1 eepdata register 6-30, 6-96, 7-1 eject 3-17, 5-9, 22-1 electrical specs 25-1 enhanced capabilities port see ecp enum# 3-17, 5-9, 6-54, 6-132, 22-1, 22-2, a-5 error handling 12-1 ? 12-13 exclusive access 13-1 ? 13-2 extended registers 5-2, 5-14, 6-3, 6-40, 6-45, 6-99, 6-118, 6-119 ? 6-120, 10-6, 10-7 extrdata register 5-14, 6-40, 6-41, 6-67 ? 6-69, 6-76 ? 6-78, 6-119, 6-120, 10-6 extridx register 5-14, 6-40, 6-41, 6-67 ? 6-69, 6-76 ? 6-78, 6-119, 6-120, 10-6 f fifo 19-1 ? 19-4 fixed priority scheme 14-2 ? 14-3 flow-through 18-1 ? 18-3 primary 6-2, 6-18, 6-81, 6-82 ? 6-84, 7-3, 18-1, 18-2 secondary 6-2, 6-26, 6-81, 6-92, 7-3 g gpio 15-1 ? 15-2 pins 3-3, 3-19 ? 3-20, 22-2 gpio[15:14, 12:8] pins 3-19 gpio[15:8] registers 6-108 ? 6-109 gpio[3:0] pins 3-19 gpio[3:0] registers 6-106 gpio[7:4] pins 3-19 gpio[7:4] registers 6-108 ? 6-109 gpio13 3-20, 5-1, 15-2 gpioid[15:8] register 6-39, 6-109 gpioid[3:0] register 6-33, 6-106, 15-1 gpioid[7:4] register 6-38, 6-108, 15-1 gpiood[15:8] register 6-39, 6-109 gpiood[3:0] register 6-33, 6-106, 15-1 gpiood[7:4] register 6-38, 6-108, 15-1 gpiooe[15:8] register 3-19, 3-20, 6-39, 6-109 gpiooe[3:0] register 3-19, 6-33, 6-106, 15-1 gpiooe[7:4] register 3-19, 6-38, 6-108, 15-1 h hardware 24-1 header registers 6-4 ? 6-15, 6-62 ? 6-71, 6-72 ? 6-80 hot swap 3-1, 22-1 ? 22-2 pins 3-17 registers 3-17, 6-37, 6-54, 6-107, 6-132, 22-1, 22-2 hs_cntl register 3-17, 6-54, 6-132 hs_csr register 3-17, 6-54, 6-132, 22-1, 22-2 hs_next register 3-17, 6-54, 6-132 hssrrc register 3-17, 6-3, 6-37, 6-51, 6-107, 10-6, 10-9, 10-10, 14-3 i iacntrl register 6-28, 6-94, 7-3, 14-1, 14-2, 14-3 ieee standard 1149.1-1990 24-1 ? 24-2 ieee standard test access port and boundary-scan architecture see ieee standard 1149.1-1990 incremental prefetch count 6-2, 6-23, 6-24, 6-81, 6-89, 6-90, 7-3, 18-3 initialization 5-1 ? 5-14
interface to p_rstin# pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. index-3 index interface debug 24-1 ? 24-2 gpio 15-1 ? 15-2 high availability 22-1 jtag 24-1 ? 24-2 primary 12-7, 16-1 ? 16-2, 20-1, 25-3 secondary 12-7, 16-3 ? 16-4, 20-1, 25-3 internal arbiter control register 6-2, 6-27, 6-28, 6-81, 6-93, 6-94, 7-3, 14-1, 14-2 interrupt registers 6-110 ? 6-116, 20-2 isa 6-14, 6-82, 10-1, 10-4 j jtag 24-1 ? 24-2 pins 3-2, 3-18 l l_stat 3-17, 5-9, 22-1 locks 13-1 ? 13-2 m master abort 3-5, 3-7, 3-9, 3-12, 3-25, 6-5, 6-10, 6-15, 6-16, 6-32, 6-34, 6-64, 6-74, 6-82, 6-103, 6-104, 8-9, 8-11, 8-12, 8-12 ? 8-13, 8-14, 8-16, 8-18, 9-1, 9-2, 9-4, 9-9, 9-11, 9-16, 9-17, 9-18, 10-5, 12-6, 13-2, 17-1, 17-2, a-2 mechanical specs 26-1 ? 26-4 memory prefetchable 6-12 ? 6-13, 10-3 private 6-2, 6-16, 6-36, 10-5, a-2 write and invalidate 6-4, 6-6, 6-21, 6-63, 6-66, 6-72, 6-75, 6-87, 8-1, 8-2, 8-3, 8-12, 8-15, 9-20, 11-1, 16-2, 16-4 message signaled interrupt registers 6-112 ? 6-113, 20-2 miscellaneous options register 6-2, 6-20 ? 6-21, 6-81, 6-86 ? 6-87, 7-3, 8-3, 8-9, 17-3 miscellaneous pins 3-3, 3-21 ? 3-23 mscopt register 6-20 ? 6-21, 6-86 ? 6-87, 7-3, 8-3, 8-9, 11-2, 13-2, 17-3 msiaddr register 6-113 msic register 6-112 msicapid register 6-107, 6-112 msidata register 6-113 msinext register 6-112 msiuaddr register 6-113 msk_in 3-2, 3-13, 5-9 multiplexed pins 3-1, 3-3, 3-25 ? 3-26 n nc 3-24 no connect pins 3-1, 3-24, c-1 non-transparent configuration ownership semaphore register 6-62, 6-98, 6-99, 6-117 non-transparent mode 2-2, 20-1, a-3 pin states 5-9 ? 5-13 pins 3-25 ? 3-26 registers 6-60 ? 6-136 reset inputs effect 5-8 symmetrical application a-7 timing 5-5 see also universal non-transparent mode normal termination vs. master abort 8-12, 8-13 ntcos register 6-62, 6-117 o optimization basic design a-2 ? a-4, a-7 flow-through 18-1 ? 18-3 ordering, transactions 11-1 ? 11-6 oscin 3-2, 3-13, 4-1, 4-2, 5-2, 5-9 oscsel# 3-2, 3-13, 4-1, 4-2, 5-9 p p_ack64# 3-1, 3-4, 5-9 p_ad[31:0] 3-4, 16-2 p_ad[63:0] 3-1 p_av dd 3-24, 5-9 p_av ss 3-24, 5-9 p_boot 3-21, 5-6, 5-7, 5-10, 21-1 p_cbe[3:0]# 3-5, 5-10, 8-2, 8-9, 16-1 ? 16-2 p_cbe[7:0]# 3-1 p_cbe[7:4]# 3-5, 5-10, 8-2, 8-9 p_clkin 3-2, 3-13, 4-1, 4-4, 5-2, 5-6, 5-7, 5-9, 5-10, 22-1 p_clkoe 3-2, 3-13, 4-1, 5-10, 6-29, 6-95 p_clkrun# 3-26, 5-10 p_cr 3-2, 3-13, 5-10 p_devsel# 3-1, 3-5, 5-10, 8-8, 12-1 p_frame# 3-1, 3-5, 5-10, 13-2 p_gnt# 3-1, 3-5, 5-10, 14-1 p_idsel 3-1, 3-5, 5-10, 8-8, 16-2 p_inta# 3-1, 3-26, 5-6, 5-10, 6-110, 6-114, 15-2 p_irdy# 3-1, 3-5, 5-10, 6-26, 6-92 p_lock# 3-1, 3-6, 5-10, 13-1 ? 13-2 p_m66en 3-1, 3-6, 4-1, 4-2, 5-2, 5-10 p_par 3-1, 3-6, 5-10, 14-1 p_par64 3-1, 3-6, 5-10, 14-1 p_perr# 3-1, 3-6, 5-10, 12-1 ? 12-13 p_pllen# 3-2, 3-13, 4-3, 5-10, 25-3 p_pme# 3-21, 5-10, 6-115, 6-116, 21-1 p_req# 3-1, 3-6, 5-10, 14-1 p_req64# 3-1, 3-6, 5-10 p_rstin# 3-16, 5-6, 5-8, 5-9 ? 5-13, 6-81, 6-98
p_rstout# to pci-x bus operation pci 6540 data book, version 1.0 index-4 ? 2003 plx technology, inc. all rights reserved. p_rstout# 3-16, 5-2, 5-6, 5-7, 5-8, 5-11, 6-128 p_serr# 3-1, 3-7, 5-11, 6-2, 6-5, 6-15, 6-32, 6-34, 6-63, 6-83, 6-103, 8-4, 8-7, 8-13, 8-14, 8-15, 8-16, 12-1 ? 12-13, 13-2 p_stop# 3-1, 3-7, 5-11, 12-3 p_trdy# 3-1, 3-7, 5-11, 12-2, 12-3 p_tst[1:0] 3-21, 5-11 p_xcap 3-22, 5-1, 5-11, 22-2 package specs 26-1 ? 26-4 parity 12-1 ? 12-13 error rules 9-3 primary signal 3-6 reporting errors 17-2 secondary signal 3-10, 3-11 pbga industry standard 26-1 package ordering information d-1 pinout 26-4 ? 26-5 pci 6540 general product information 1-1 ? 1-5, d-1 pci 6520bb and pci 6540bb pin comparison, application note c-1 pci arbitration 14-1 ? 14-3 pci bus operation 8-1 ? 8-18 pci bus power management interface specification, revision 1.1 see pci power mgmt. r1.1 pci configuration registers 6-2 ? 6-136 pci local bus specification, revision 2.1 see pci r2.1 pci local bus specification, revision 2.3 see pci r2.3 pci power mgmt. r1.1 2-1, 21-1 pci r2.1 6-43, 6-44, 6-45 pci r2.3 1-4, 3-1, 3-2, 3-3, 5-2, 6-43, 6-44, 6-45, 10-5, 11-1, 11-4, 23-1, 24-2 pci shadow configuration registers 6-81 ? 6-136 pci to pci bridge architecture specification, revision 1.1 see p-to-p bridge r1.1 pci transactions 8-1 ? 8-18, 11-1 ? 11-4 pci type 0 header registers primary port 6-62 ? 6-71 secondary port 6-72 ? 6-80 pci type 1 header registers 6-4 ? 6-15 pcibar0 register 2-2, 6-43, 6-44, 6-67, 10-9, 10-10, 10-11 pcibar1 register 2-2, 6-43, 6-48, 6-68, 6-124, 10-9, 10-10, 10-11 pcibar2 register 2-2, 6-43, 6-69, 10-9, 10-10, 10-11 pcibistr register 6-7, 6-66, 6-75, 7-3 pciccr register 6-6, 6-37, 6-65, 6-74, 6-107 pciclsr register 6-6, 6-22, 6-23, 6-66, 6-89, 8-3, 18-1 pcicr register 6-4 ? 6-5, 6-6, 6-10, 6-15, 6-32, 6-63, 6-64, 6-73, 6-74, 6-82, 6-103, 6-104, 7-3, 8-4, 8-7, 8-13, 8-14, 8-15, 8-16, 8-18, 10-1, 10-2, 10-4, 12-1, 12-2, 12-3, 12-5, 12-6, 12-7 ? 12-13, 13-2, 17-2 pcihtr register 6-7, 6-37, 6-66, 6-75, 6-107 pciidr register 6-4, 6-37, 6-62, 6-72, 6-107, 7-3 pciiobar register 6-9, 10-1, 10-2, 10-6 pciiobaru16 register 6-9, 6-13, 10-2 pciiolmt register 6-9, 10-2, 10-6 pciiolmtu16 register 6-9, 6-13, 10-2 pciipr register 6-14 pciltr register 6-6, 6-66 pcimbar register 6-11, 10-2, 10-3, 10-6 pcimlmt register 6-11, 10-2, 10-3, 10-6 pcipbno register 6-8, 6-135, 8-11 pcipilr register 6-71 pcipipr register 6-71 pcipmbar register 6-12, 6-13, 10-2, 10-4 pcipmbaru32 register 6-12, 6-13, 10-2 pcipmgr register 6-71, 6-107 pcipmlmt register 6-12, 6-13, 10-2, 10-4 pcipmlmtu32 register 6-12, 6-13, 10-2 pcipmlr register 6-71, 6-107 pcirev register 6-6, 6-65, 6-74 pcisbno register 6-8, 8-9, 8-11 pcisclsr register 6-75, 8-3, 18-1 pciscr register 6-72, 6-104 pcisid register 6-70, 6-79, 6-107, 7-4 pcisilr register 6-80 pcisipr register 6-80 pcisltr register 6-8, 6-75 pcismgr register 6-80, 6-107 pcismlr register 6-80, 6-107 pcisr register 6-5, 6-64, 8-13, 8-14, 8-15, 8-16, 8-18, 12-1, 12-2, 12-3, 12-4, 12-6, 12-7, 12-9, 17-1 pcissr register 6-10, 6-73, 8-13, 8-14, 8-15, 8-16, 8-18, 12-1, 12-2, 12-3, 12-4, 12-6, 12-8, 12-10, 17-1 pcisubno register 6-8, 8-11 pcisvid register 6-70, 6-79, 6-107, 7-4 pciubar0 register 6-44, 6-76, 10-10 pciubar1 register 6-44, 6-46, 6-77, 6-121, 10-10 pciubar2 register 6-45, 6-78, 10-10 pci-x addendum to pci local bus specification, revision 1.0b see pci-x r1.0b pci-x bus operation 9-1 ? 9-21
pci-x capability registers to pins pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. index-5 index pci-x capability registers 6-56 ? 6-59, 6-134 ? 6-136 pci-x clock b-1 ? b-2 pci-x r1.0b 3-1, 3-2, 6-1, 11-1, 11-4, 25-4 pci-x transactions 9-1 ? 9-21, 11-4 ? 11-6 pcix_cmd register 6-134 pcix_next register 6-56, 6-134 pcixbsr register 3-21, 6-58, 6-135, 9-7, 9-11, 9-13 pcixcapid register 6-56, 6-134 pcixdnstr register 6-57, 6-59, 6-136, 19-2 pcixssr register 3-20, 6-56 ? 6-57, 15-2 pcixupstr register 6-58, 6-59, 6-136, 19-4 pftcr register 6-18, 6-84, 7-3, 18-1, 18-2 physical specs 26-1 ? 26-4 picmg 2.1 r2.0 2-1, 22-1 picmg 2.1 r2.0 hot swap specification see picmg 2.1 r2.0 pincpcnt register 6-22, 6-23, 6-88, 6-89, 7-3, 18-1, 18-3, 19-2, 19-4 pinout pbga 26-4 ? 26-5 specs 26-1 ? 26-4 pins boundary scan 3-2, 3-18 bpcc_en 3-21, 5-9 clock related 3-2, 3-13 ? 3-15 compactpci hot swap 3-2, 3-17 dev64# 3-21, 5-9, 6-29, 6-58, 6-95, 6-135 eepclk 3-18, 5-9, 7-1 eepdata 3-18, 5-9, 7-1 eject 3-17, 5-9, 22-1 enum# 3-17, 5-9, 6-54, 6-132, 22-1, 22-2, a-5 gpio 3-3, 3-19 ? 3-20, 22-2 gpio[15:14, 12:8] 3-19 gpio[3:0] 3-19 gpio[7:4] 3-19 gpio13 pin 3-20, 5-1, 15-2 hot swap 3-17 jtag 3-2, 3-18, 24-1 l_stat 3-17, 5-9, 22-1 miscellaneous 3-3, 3-21 ? 3-23 msk_in 3-2, 3-13, 5-9 multiplexed 3-1, 3-3, 3-25 ? 3-26 nc 3-24 no connect 3-1, 3-24, c-1 oscin 3-2, 3-13, 4-1, 4-2, 5-2, 5-9 oscsel# 3-2, 3-13, 4-1, 4-2, 5-9 p_ack64# 3-1, 3-4, 5-9 p_ad[31:0] 3-4, 16-2 p_ad[63:0] 3-1 p_av dd 3-24, 5-9 p_av ss 3-24, 5-9 p_boot 3-21, 5-6, 5-7, 5-10, 21-1 p_cbe[3:0]# 3-5, 5-10, 8-2, 8-9, 16-1 ? 16-2 p_cbe[7:0]# 3-1 p_cbe[7:4]# 3-5, 5-10, 8-2, 8-9 p_clkin 3-2, 3-13, 4-1, 4-4, 5-2, 5-6, 5-7, 5-9, 5-10, 22-1 p_clkoe 3-2, 3-13, 4-1, 5-10, 6-29, 6-95 p_clkrun# 3-26, 5-10 p_cr 3-2, 3-13, 5-10 p_devsel# 3-1, 3-5, 5-10, 8-8, 12-1 p_frame# 3-1, 3-5, 5-10, 13-2 p_gnt# 3-1, 3-5, 5-10, 14-1 p_idsel 3-1, 3-5, 5-10, 8-8, 16-2 p_inta# 3-1, 3-26, 5-6, 5-10, 6-110, 6-114, 15-2 p_irdy# 3-1, 3-5, 5-10, 6-26, 6-92 p_lock# 3-1, 3-6, 5-10, 13-1 ? 13-2 p_m66en 3-1, 3-6, 4-1, 4-2, 5-2, 5-10 p_par 3-1, 3-6, 5-10, 14-1 p_par64 3-1, 3-6, 5-10, 14-1 p_perr# 3-1, 3-6, 5-10, 12-1 ? 12-13 p_pllen# 3-2, 3-13, 4-3, 5-10, 25-3 p_pme# 3-21, 5-10, 6-115, 6-116, 21-1 p_req# 3-1, 3-6, 5-10, 14-1 p_req64# 3-1, 3-6, 5-10 p_rstin# 3-16, 3-19, 5-6, 5-8, 5-9 ? 5-13, 6-81, 6-98, 15-2 p_rstout# 3-16, 5-2, 5-6, 5-7, 5-8, 5-11, 6-128 p_serr# 3-1, 3-7, 5-11, 6-2, 6-5, 6-15, 6-32, 6-34, 6-63, 6-83, 6-103, 8-4, 8-7, 8-13, 8-14, 8-15, 8-16, 12-1 ? 12-13, 13-2 p_stop# 3-1, 3-7, 5-11, 12-3 p_trdy# 3-1, 3-7, 5-11, 12-2, 12-3 p_tst[1:0] 3-21, 5-11 p_xcap 3-22, 5-1, 5-11, 22-2 power and ground 3-24, 4-3, 25-3 primary clock 3-2 primary pci bus interface 3-1 ? 3-2, 3-4 ? 3-7 prv_dev 3-25, 5-11, 6-16, 6-36, 6-40, 6-118, 7-2, 10-5, 22-2, a-2 pwrgd 3-16, 5-2, 5-4 ? 5-5, 5-6, 5-7, 5-8, 5-9 ? 5-13, 5-14, 15-2 refclk 3-2, 3-13, 4-4, 5-11 reserveio[2:1] 3-22 reset 3-2, 3-16 ? 3-17, 5-9 s_ack64# 3-1, 3-8 s_ad[31:0] 3-8, 16-4 s_ad[63:0] 3-1 s_ad[63:32] 3-8, 6-37, 6-107 s_av dd 3-24, 5-11 s_av ss 3-24, 5-11 s_cbe[3:0]# 3-8, 16-3 ? 16-4 s_cbe[7:0]# 3-1 s_cbe[7:4]# 3-9, 6-37, 6-107 s_cfn# 3-22, 6-29, 6-95
pitlpcnt register to psserrsr register pci 6540 data book, version 1.0 index-6 ? 2003 plx technology, inc. all rights reserved. s_clkin 3-2, 3-14, 4-1, 4-2, 4-4, 6-29, 6-95, a-2, a-3, a-5, a-6 s_clkin_stb 3-2, 3-14 s_clko[4:1] 3-2, 3-15, 4-1, 5-11 s_clko0 3-2, 3-14, 3-15, 4-1, 4-2, 5-11, 6-34, 6-102, a-5, a-6, b-2 s_clkoff 3-2, 3-15, 4-1, 4-2 s_clkrun# 3-26, 5-12 s_cr 3-2, 3-15, 5-12 s_devsel# 3-1, 3-9, 5-6, 5-7, 5-12, 12-2 s_frame# 3-1, 3-9, 5-12, 13-2, 14-2, 14-3 s_gnt[7:0]# 3-1 s_gnt[7:1]# 3-9, 5-12 s_gnt0# 3-9, 5-12, 14-3, a-4, a-5, a-7 s_idsel 3-1, 3-10, 5-12, 10-5 s_inta# 3-1, 3-26, 5-6, 5-12, 6-110, 6-114, 15-2 s_irdy# 3-1, 3-10, 5-12, 6-18, 6-84, 14-3 s_lock# 3-1, 3-10, 5-12, 13-1 ? 13-2 s_m66en 3-1, 3-10, 4-1, 4-2, 5-1, 5-2, 5-12 s_par 3-1, 3-10, 5-12, 14-3 s_par64 3-1, 3-10, 5-12, 6-37, 6-107, 14-3 s_perr# 3-1, 3-11, 5-12, 6-10, 6-73, 12-1 ? 12-13 s_pllen# 3-15, 4-3, 5-12, 25-3 s_pme# 3-22, 5-12, 6-115, 6-116, 21-1 s_req[7:0]# 3-1 s_req[7:1]# 3-11, 5-12 s_req0# 3-11, 5-12, 14-3, a-4, a-5, a-6, a-7 s_req64# 3-1, 3-11, 5-12 s_rstin# 3-16, 5-2, 5-4 ? 5-5, 5-6, 5-7, 5-8, 5-9 ? 5-13, 6-41, 6-81, 6-98, 6-115, 6-116, 6-119, 6-123, 6-128, a-6 s_rstout# 3-17, 4-1, 5-2, 5-5, 5-6, 5-7, 5-8, 5-12, 6-82, 6-128, 21-1, a-3, a-5 s_serr# 3-1, 3-12, 12-1 ? 12-13 s_stop# 3-1, 3-12, 5-6, 5-7, 5-13, 12-3 s_trdy# 3-1, 3-12, 5-6, 5-7, 5-13, 12-3 s_tst[1:0] 3-23, 5-13 s_xcap_in 3-23, 5-1, 5-13 s_xcap_pu 3-23, 5-1, 5-13 secondary clock 3-2 secondary pci bus interface 3-1 ? 3-2, 3-8 ? 3-12 serial eeprom 3-3, 3-18 tck 3-18, 24-1 tdi 3-18, 24-1, 24-2 tdo 3-18, 24-1, 24-2 test 3-23, 5-13 tms 3-18, 24-1 trans# 3-23, 4-2, 5-6, 5-7, 6-29, 6-60, 6-95, 20-1, a-5 trdy# 24-1 trst# 3-18, 24-2 u_mode 3-23, 4-2, 5-6, 5-7, 6-29, 6-95, a-4, a-5 v dd_core 3-24, 5-13 v dd_io 3-24, 5-13 v ss 3-13, 3-15, 3-24, 5-13 xb_mem 3-25, 5-13, 6-67, 6-68, 6-69, 6-76, 6-77, 6-78, 6-123, 6-126, 20-1 ? 20-2, a-3, a-4, a-7 see also pinout designations and appendix c, pci 6520bb and pci 6540bb pin comparison pitlpcnt register 6-22, 6-23, 6-88, 6-89, 7-3, 18-1, 18-2, 19-2, 19-4 plx technology, inc. product information 1-1 product ordering and technical support d-2 pmaxpcnt register 6-25, 6-27, 6-89, 6-91, 7-3, 18-1, 18-3, 19-3 pmc register 6-37, 6-51, 6-52, 6-107, 6-130, 7-4 pmcapid register 6-51, 6-129 pmcdata register 6-37, 6-53, 6-107, 6-131, 7-3 pmcsr register 5-7, 6-3, 6-37, 6-53, 6-99, 6-107, 6-131, 7-4 pmcsr_bse register 6-53, 6-131 pmnext register 6-51, 6-129 power and ground pins 3-24, 4-3, 25-3 power good input signal 3-16 reset 5-2 ? 5-5 see also pwrgd power management 21-1 power management capability registers 6-3, 6-51 ? 6-53, 6-99, 6-107, 6-129 ? 6-131, 7-4 power supply 3-3 power-up status registers 3-19, 3-20, 6-3, 6-39, 6-98, 6-108 ? 6-109 prefetch 18-3 data timeout flushing 19-3 incremental count 6-2, 6-23, 6-24, 6-81, 6-89, 6-90, 7-3 memory 6-12 ? 6-13, 10-3 read transaction 8-5 ? 8-6 reprogramming registers 18-1 setting byte count 19-4 smart 6-27, 19-3 prefetch control registers 6-2, 6-22 ? 6-25, 6-88 ? 6-91, 7-3, 18-1, 18-2, 19-2, 19-4 primary clock frequency measurement 4-4 clock pins 3-2 configuration registers 5-6, 6-62 ? 6-80 flow-through control registers 6-18, 6-82 ? 6-84 pci bus interface pins 3-1 ? 3-2, 3-4 ? 3-7 priority schemes 14-2 ? 14-3 private memory 6-2, 6-16, 6-36, 10-5, a-2 prv_dev 3-25, 5-11, 6-16, 6-36, 6-40, 6-118, 7-2, 10-5, 22-2, a-2 pserred register 6-32, 6-103, 8-13 ? 8-16, 12-1, 12-4 pserrsr register 6-34, 12-1 psserrsr register 6-105, 12-1, 12-4
p-to-p bridge r1.1 to registers pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. index-7 index p-to-p bridge r1.1 6-1, 10-3, 12-6 pull-up/pull-down resistor recommendations 3-1 ? 3-3 pvpd_next register 6-55, 6-133 pvpdad register 6-55, 6-133 pvpdata register 6-55, 6-133 pvpdid register 6-55, 6-133 pvtmbar register 3-25, 6-16, 6-36 pvtmbaru32 register 3-25, 6-36 pvtmlmt register 3-25, 6-36 pvtmlmtu32 register 6-36 pwrgd 3-16, 5-2, 5-4 ? 5-5, 5-6, 5-7, 5-8, 5-9 ? 5-13, 5-14, 15-2 pwrupsr register 3-19, 3-20, 6-39, 6-109 r read-only control register 6-107 refclk 3-2, 3-13, 4-4, 5-11 registers acntrl 6-17, 6-28, 6-128, 14-1, 14-2 address translation control 6-42 ? 6-50, 6-120 ? 6-126, 10-5, 10-11, 20-1 arbiter control 6-2, 6-16 ? 6-17, 6-99, 6-127 ? 6-128, 14-1 bcntrl 5-8, 6-14 ? 6-15, 6-17, 6-19, 6-82, 6-128, 19-3 bufcr 6-27, 6-93, 19-3, 19-4 buffer control 6-2, 6-27, 6-81, 6-93 cap_ptr 6-5, 6-14, 6-64, 6-70, 6-73, 6-79 ccntrl 3-25, 6-16, 6-36, 6-81, 6-117, 6-127, 8-5, 10-5 chip control 3-25, 6-2, 6-16 ? 6-17, 6-36, 6-81, 6-99, 6-127 ? 6-128, 8-5 clkcntrl 3-2, 3-13, 3-15, 4-1, 5-6, 6-34, 6-102 clkrun 6-35 control 2-1, 6-16 ? 6-17, 6-127 ? 6-128, 8-6 dcntrl 3-16, 5-7, 5-8, 6-17, 6-128 device-specific 6-16 ? 6-17 diagnostic control 3-16, 5-6, 5-7, 6-16 ? 6-17, 6-127 ? 6-128 direct message interrupt 5-6, 6-110 ? 6-111, 20-2 doorbell interrupt 6-99, 6-114 ? 6-116, 20-1, 20-2 dwnbar0msk 6-49, 6-67, 6-125, 7-4, 10-9, 10-11 dwnbar1msk 6-43, 6-48, 6-49, 6-68, 6-69, 6-124, 6-125, 7-4, 10-9, 10-11 dwnbar2msk 6-50, 6-69, 6-125, 7-4, 10-9, 10-11 dwndbie 6-114 dwndbir 6-114 dwndbis 6-115 dwninte 5-6, 6-116 dwnintsr 5-6, 6-111, 6-115 dwnmsg0 6-111 dwnmsg1 6-111 dwnmsg2 6-111 dwnmsg3 6-111 dwntnbar0 6-48, 6-124, 7-4, 10-12 dwntnbar1 6-48, 6-124, 10-9, 10-12 dwntnbar2 6-48, 6-124, 10-9, 10-12 dwntne 6-50, 6-126, 7-4, 10-10, 10-12, 20-1 eepaddr 6-30, 6-96, 7-1 eepcntrl 6-29, 6-95, 7-1 eepdata 6-30, 6-96, 7-1 extended 5-2, 5-14, 6-3, 6-40, 6-45, 6-99, 6-118, 6-119 ? 6-120, 10-6, 10-7 extrdata 5-14, 6-40, 6-41, 6-67 ? 6-69, 6-76 ? 6-78, 6-119, 6-120, 10-6 extridx 5-14, 6-41, 6-67 ? 6-69, 6-76 ? 6-78, 6-119, 10-6 gpioid[15:8] 6-39, 6-109 gpioid[3:0] 6-33, 6-106, 15-1 gpioid[7:4] 6-38, 6-108, 15-1 gpiood[15:8] 6-39, 6-109 gpiood[3:0] 6-33, 6-106, 15-1 gpiood[7:4] 6-38, 6-108, 15-1 gpiooe[15:8] 3-19, 3-20, 6-39, 6-109 gpiooe[3:0] 3-19, 6-33, 6-106, 15-1 gpiooe[7:4] 3-19, 6-38, 6-108, 15-1 header 6-4 ? 6-15, 6-62 ? 6-71, 6-72 ? 6-80 hot swap 3-17, 6-37, 6-54, 6-107, 6-132, 22-1, 22-2 hs_cntl 3-17, 6-54, 6-132 hs_csr 3-17, 6-54, 6-132, 22-1, 22-2 hs_next 3-17, 6-54, 6-132 hssrrc 3-17, 6-3, 6-37, 6-51, 6-107, 10-6, 10-9, 10-10, 14-3 iacntrl 6-28, 6-94, 7-3, 14-1, 14-2, 14-3 internal arbiter control 6-2, 6-28, 6-81, 6-93, 6-94, 7-3, 14-1, 14-2 interrupt 6-110 ? 6-116, 20-2 message signaled interrupt 6-112 ? 6-113, 20-2 miscellaneous options 6-2, 6-20 ? 6-21, 6-81, 7-3, 8-3, 17-3 mscopt 6-20 ? 6-21, 6-86 ? 6-87, 7-3, 8-3, 8-9, 11-2, 13-2, 17-3 msiaddr 6-113 msic 6-112 msicapid 6-107, 6-112 msidata 6-113 msinext 6-112 msiuaddr 6-113 non-transparent configuration ownership semaphore 6-62, 6-98, 6-99, 6-117 non-transparent mode 6-60 ? 6-136 ntcos 6-62, 6-117 pci configuration 6-2 ? 6-136 pci shadow configuration 6-81 ? 6-136 pci type 1 header 6-4 ? 6-15 pcibar0 2-2, 6-43, 6-44, 6-67, 10-9, 10-10, 10-11 pcibar1 2-2, 6-43, 6-48, 6-68, 6-124, 10-9, 10-10, 10-11 pcibar2 2-2, 6-43, 6-69, 10-9, 10-10, 10-11 pcibistr 6-7, 6-66, 6-75, 7-3 pciccr 6-6, 6-37, 6-65, 6-74, 6-107 pciclsr 6-6, 6-22, 6-23, 6-66, 6-89, 8-3, 18-1
registers to registers pci 6540 data book, version 1.0 index-8 ? 2003 plx technology, inc. all rights reserved. pcicr 6-4 ? 6-5, 6-6, 6-10, 6-15, 6-32, 6-63, 6-64, 6-73, 6-74, 6-82, 6-103, 6-104, 7-3, 8-4, 8-7, 8-13, 8-14, 8-15, 8-16, 8-18, 10-1, 10-2, 10-4, 12-1, 12-2, 12-3, 12-5, 12-6, 12-7 ? 12-13, 13-2, 17-2 pcihtr 6-7, 6-37, 6-66, 6-75, 6-107 pciidr 6-4, 6-37, 6-62, 6-72, 6-107, 7-3 pciiobar 6-9, 10-1, 10-2, 10-6 pciiobaru16 6-9, 6-13, 10-2 pciiolmt 6-9, 10-2, 10-6 pciiolmtu16 6-9, 6-13, 10-2 pciipr 6-14 pciltr 6-6, 6-66 pcimbar 6-11, 10-2, 10-3, 10-6 pcimlmt 6-11, 10-2, 10-3, 10-6 pcipbno 6-8, 8-11 pcipilr 6-71 pcipipr 6-71 pcipmbar 6-12, 6-13, 10-2, 10-4 pcipmbaru32 6-12, 6-13, 10-2 pcipmbno 6-135 pcipmgr 6-71, 6-107 pcipmlmt 6-12, 6-13, 10-2, 10-4 pcipmlmtu32 6-12, 6-13, 10-2 pcipmlr 6-71, 6-107 pcirev 6-6, 6-65, 6-74 pcisbno 6-8, 8-9, 8-11, 9-11 pcisclsr 6-75, 8-3, 18-1 pciscr 6-72, 6-104 pcisid 6-70, 6-79, 6-107, 7-4 pcisilr 6-80 pcisipr 6-80 pcisltr 6-8, 6-75 pcismgr 6-80, 6-107 pcismlr 6-80, 6-107 pcisr 6-5, 6-64, 8-13, 8-14, 8-15, 8-16, 8-18, 12-1, 12-2, 12-3, 12-4, 12-6, 12-7, 12-9, 17-1 pcisrr 12-4 pcissr 6-10, 6-73, 8-13, 8-14, 8-15, 8-16, 8-18, 12-1, 12-2, 12-3, 12-4, 12-6, 12-8, 12-10, 17-1 pcisubno 6-8, 8-11 pcisvid 6-70, 6-79, 6-107, 7-4 pciubar0 6-44, 6-76, 10-10 pciubar1 6-44, 6-46, 6-77, 6-121, 10-10 pciubar2 6-45, 6-78, 10-10 pcix_cmd 6-134 pcix_next 6-56, 6-134 pcixbsr 3-21, 6-58, 6-135, 9-7, 9-11, 9-13 pcixcapid 6-56, 6-134 pcixdnstr 6-57, 6-59, 6-136, 19-2 pcixssr 3-20, 6-56 ? 6-57, 15-2 pcixupstr 6-58, 6-59, 6-136, 19-4 pftcr 6-18, 6-84, 7-3, 18-1, 18-2 pincpcnt 6-22, 6-23, 6-88, 6-89, 7-3, 18-1, 18-3, 19-2, 19-4 pitlpcnt 6-22, 6-23, 6-88, 6-89, 7-3, 18-1, 18-2, 19-2, 19-4 pmaxpcnt 6-25, 6-27, 6-89, 6-91, 7-3, 18-1, 18-3, 19-3 pmc 6-37, 6-51, 6-52, 6-107, 6-130, 7-4 pmcapid 6-51, 6-129 pmcdata 6-37, 6-53, 6-107, 6-131, 7-3 pmcsr 5-7, 6-3, 6-37, 6-53, 6-99, 6-107, 6-131, 7-4 pmcsr_bse 6-53, 6-131 pmnext 6-51, 6-129 power management capability 6-3, 6-51 ? 6-53, 6-99, 6-107, 6-129 ? 6-131, 7-4 power-up status 3-19, 3-20, 6-3, 6-39, 6-98, 6-108 ? 6-109 prefetch control 6-22 ? 6-25, 6-88 ? 6-91, 7-3, 18-1, 18-2, 19-2, 19-4 primary configuration 5-6, 6-62 ? 6-80 primary flow-through control 6-18, 6-82 ? 6-84 pserred 6-32, 6-103, 8-13 ? 8-16, 12-1, 12-4 pserrsr 6-34, 12-1 psserrsr 6-105, 12-1, 12-4 pvpd_next 6-55, 6-133 pvpdad 6-55, 6-133 pvpdata 6-55, 6-133 pvpdid 6-55, 6-133 pvtmbar 3-25, 6-16, 6-36 pvtmbaru32 3-25, 6-36 pvtmlmt 6-36 pvtmlmtu32 6-36 pvtmmlmt 3-25 pwrupsr 3-19, 3-20, 6-39, 6-109 read-only control 6-107 scratch x 5-6, 5-8, 5-14, 6-40, 6-41, 6-118, 6-119 secondary flow-through control 6-2, 6-26, 6-81, 6-92, 7-3 semaphore 6-62, 6-98, 6-117 serial eeprom 6-29 ? 6-30, 6-95 ? 6-96, 7-2 sftcr 6-26, 6-92, 7-3, 18-1, 18-2 sincpcnt 6-23, 6-24, 6-89, 6-90, 7-3, 18-1, 18-3, 19-2, 19-4 sitlcpcnt 19-2 sitlpcnt 6-23, 6-24, 6-89, 6-90, 7-3, 18-1, 18-2, 19-4 smaxpcnt 6-24, 6-25, 6-27, 6-90, 6-91, 7-3, 18-1, 18-3, 19-3 sserred 6-104, 12-1 sticky scratch 5-6, 5-8, 5-14, 6-40, 6-41, 6-118, 6-119 system error event 6-32, 6-103 ? 6-105 test 6-29, 6-95 timeout control 6-2, 6-19, 6-81, 6-85, 7-3, 8-4 timer 4-4, 6-31, 6-85, 6-97 tmrcnt 4-4, 6-31, 6-97 tmrcntrl 4-4, 6-31, 6-97 tocntrl 6-19, 6-32, 6-85, 6-103, 6-104, 7-3, 8-4 transparent mode 6-2 ? 6-42 upsbar0msk 6-47, 6-76, 6-122, 7-4, 10-10
reserveio[2:1] to sitlpcnt register pci 6540 data book, version 1.0 ? 2003 plx technology, inc. all rights reserved. index-9 index upsbar1msk 6-45, 6-46, 6-47, 6-77, 6-78, 6-121, 6-122, 7-4, 10-10 upsbar2msk 6-47, 6-78, 6-122, 7-4, 10-10 upsdbie 6-114 upsdbir 6-114 upsdbis 6-116 upsinte 6-115 upsintsr 5-6, 6-116 upsmsg0 5-6, 6-110 upsmsg1 5-6, 6-110 upsmsg2 5-6, 6-110 upsmsg3 5-6, 6-110 upstnbar0 6-46, 6-121, 7-4, 10-10 upstnbar1 6-46, 6-121, 7-4, 10-10 upstnbar2 6-46, 6-121, 7-4 upstne 6-48, 6-123, 7-4, 10-12, 20-1 vpd 6-55, 6-133, 23-1 xbcos 6-101 xbdwnca 6-100 xbdwncd 6-100 xbdwncos 6-101 xbupsca 6-100 xbupscd 6-100 xbupscos 6-101 reserveio[2:1] 3-22 reset 5-1 ? 5-14 jtag 24-1, 24-2 pins 3-2, 3-16 ? 3-17 resistor recommendations, pull-up/pull-down 3-1 ? 3-3 rotating priority scheme 14-2 rstin# 3-19, 15-2 rules 9-1 ? 9-3, 11-1, 11-2, 11-5 s s_ack64# 3-1, 3-8 s_ad[31:0] 3-8, 16-4 s_ad[63:0] 3-1 s_ad[63:32] 3-8, 6-37, 6-107 s_av dd 3-24, 5-11 s_av ss 3-24, 5-11 s_cbe[3:0]# 3-8, 16-3 ? 16-4 s_cbe[7:0]# 3-1 s_cbe[7:4]# 3-9, 6-37, 6-107 s_cfn# 3-22, 6-29, 6-95 s_clkin 3-2, 3-14, 4-1, 4-2, 4-4, 6-29, 6-95, a-2, a-3, a-5, a-6 s_clkin_stb 3-2, 3-14 s_clko[4:1] 3-2, 3-15, 4-1, 5-11 s_clko0 3-2, 3-14, 3-15, 4-1, 4-2, 5-11, 6-34, 6-102, a-5, a-6, b-2 s_clkoff 3-2, 3-15, 4-1, 4-2 s_clkrun# 3-26, 5-12 s_cr 3-2, 3-15, 5-12 s_devsel# 3-1, 3-9, 5-6, 5-7, 5-12, 12-2 s_frame# 3-1, 3-9, 5-12, 13-2, 14-2, 14-3 s_gnt[7:0]# 3-1 s_gnt[7:1]# 3-9, 5-12 s_gnt0# 3-9, 5-12, 14-3, a-4, a-5, a-7 s_idsel 3-1, 3-10, 5-12, 10-5 s_inta# 3-1, 3-26, 5-6, 5-12, 6-110, 6-114, 15-2 s_irdy# 3-1, 3-10, 5-12, 6-18, 6-84, 14-3 s_lock# 3-1, 3-10, 5-12, 13-1 ? 13-2 s_m66en 3-1, 3-10, 4-1, 4-2, 5-1, 5-2, 5-12 s_par 3-1, 3-10, 5-12, 14-3 s_par64 3-1, 3-10, 5-12, 6-37, 6-107, 14-3 s_perr# 3-1, 3-11, 5-12, 6-10, 6-73, 12-1 ? 12-13 s_pllen# 3-2, 3-15, 4-3, 5-12, 25-3 s_pme# 3-22, 5-12, 6-115, 6-116, 21-1 s_req[7:0]# 3-1 s_req[7:1]# 3-11, 5-12 s_req0# 3-11, 5-12, 14-3, a-4, a-5, a-6, a-7 s_req64# 3-1, 3-11, 5-12 s_rstin# 3-16, 5-2, 5-4 ? 5-5, 5-6, 5-7, 5-8, 5-9 ? 5-13, 6-41, 6-81, 6-98, 6-115, 6-116, 6-119, 6-123, 6-128, a-6 s_rstout# 3-17, 4-1, 5-2, 5-5, 5-6, 5-7, 5-8, 5-12, 6-82, 6-128, 21-1, a-3, a-5 s_serr# 3-1, 3-12, 12-1 ? 12-13 s_stop# 3-1, 3-12, 5-6, 5-7, 5-13, 12-3 s_trdy# 3-1, 3-12, 5-6, 5-7, 5-13, 12-3 s_tst[1:0] 3-23, 5-13 s_xcap_in 3-23, 5-1, 5-13 s_xcap_pu 3-23, 5-1, 5-13 sac 8-2, 9-2, 9-10, 10-3 scratch x 5-6, 5-8, 5-14, 6-40, 6-41, 6-118, 6-119 secondary clock frequency measurement 4-4 clock pins 3-2 flow-through control register 6-2, 6-26, 6-81, 6-92, 7-3 pci bus interface pins 3-1 ? 3-2, 3-8 ? 3-12 semaphore registers 6-62, 6-98, 6-117 serial eeprom 6-2, 6-81, 7-1 ? 7-4 pins 3-3, 3-18 registers 6-29 ? 6-30, 6-95 ? 6-96, 7-2 sftcr register 6-26, 6-92, 7-3, 18-1, 18-2 signal specs 26-1 ? 26-4 sincpcnt register 6-23, 6-24, 6-89, 6-90, 7-3, 18-1, 18-3, 19-2, 19-4 single address cycle see sac sitlcpcnt register 19-2 sitlpcnt register 6-23, 6-24, 6-89, 6-90, 7-3, 18-1, 18-2, 19-4
smart prefetch to xbupscos register pci 6540 data book, version 1.0 index-10 ? 2003 plx technology, inc. all rights reserved. smart prefetch 6-27, 19-3 smaxpcnt register 6-24, 6-25, 6-27, 6-90, 6-91, 7-3, 18-1, 18-3, 19-3 specs electrical 25-1 mechanical 26-1 ? 26-4 split completion 9-1 ? 9-19 sserred register 6-104, 12-1 sticky scratch registers 5-6, 5-8, 5-14, 6-40, 6-41, 6-118, 6-119 system error event registers 6-32, 6-103 ? 6-105 t tap controller see test access port controller target abort 3-7, 3-12, 6-5, 6-10, 6-15, 6-32, 6-34, 6-64, 6-73, 6-74, 6-82, 6-103, 6-104, 8-3, 8-4, 8-7, 8-12, 8-13, 8-14, 8-15, 8-16, 8-18, 9-3, 9-4, 9-8, 9-9, 9-16, 9-17, 9-18, 9-19, 12-1, 12-2, 12-4, 12-6, 13-2 tck 3-18, 24-1 tdi 3-18, 24-1, 24-2 tdo 3-18, 24-1, 24-2 termination, abnormal 17-2 test access port controller 24-1, 24-2 test pin 3-23, 5-13 test register 6-29, 6-95 testability 24-1 ? 24-2 timeout 19-3 control 6-2, 6-81, 7-3 timeout control register 6-2, 6-19, 6-81, 6-85, 7-3, 8-4 timer registers 4-4, 6-31, 6-97 tmrcnt register 4-4, 6-31, 6-97 tmrcntrl register 4-4, 6-31, 6-97 tms 3-18, 24-1 tocntrl register 6-19, 6-32, 6-85, 6-103, 6-104, 7-3, 8-4 trans# 3-23, 4-2, 5-6, 5-7, 6-29, 6-60, 6-95, 20-1, a-5 transactions pci 8-1 ? 8-18, 11-1 ? 11-4 pci-x 9-1 ? 9-21, 11-4 ? 11-6 transparent mode a-2 address translation 10-6 ? 10-10 pin states 5-9 ? 5-13 pins 3-25 ? 3-26 registers 6-2 ? 6-42 reset inputs effect 5-8 see also universal transparent mode trdy# 24-1 trst# 3-18, 24-2 u u_mode 3-23, 4-2, 5-6, 5-7, 6-29, 6-95, a-4, a-5 universal bridging a-4 ? a-5 universal non-transparent mode bus speed detection b-2 groups 7-2 reset inputs effect 5-8 universal transparent mode bus speed detection b-2 reset inputs effect 5-8 upsbar0msk register 6-47, 6-76, 6-122, 7-4, 10-10 upsbar1msk register 6-45, 6-46, 6-47, 6-77, 6-78, 6-121, 6-122, 7-4, 10-10 upsbar2msk register 6-47, 6-78, 6-122, 7-4, 10-10 upsdbie register 6-114 upsdbir register 6-114 upsdbis register 6-116 upsinte register 6-115 upsintsr register 5-6, 6-116 upsmsg0 register 5-6, 6-110 upsmsg1 register 5-6, 6-110 upsmsg2 register 5-6, 6-110 upsmsg3 register 5-6, 6-110 upstnbar0 register 6-46, 6-121, 7-4, 10-10 upstnbar1 register 6-46, 6-121, 7-4, 10-10 upstnbar2 register 6-46, 6-121, 7-4, 10-10 upstne register 6-48, 6-123, 7-4, 10-12, 20-1 v v dd_core 3-24, 5-13 v dd_io 3-24, 5-13 vga 6-14, 6-82, 10-1, 10-4 vhdl 24-2 vhsic hardware description language 24-2 vpd 23-1 registers 6-55, 6-133, 23-1 v ss 3-13, 3-15, 3-24, 5-13 x xb_mem 3-25, 5-13, 6-67, 6-68, 6-69, 6-76, 6-77, 6-78, 6-123, 6-126, 20-1 ? 20-2, a-3, a-4, a-7 xbcos register 6-101 xbdwnca register 6-100 xbdwncd register 6-100 xbdwncos register 6-101 xbupsca register 6-100 xbupscd register 6-100 xbupscos register 6-101


▲Up To Search▲   

 
Price & Availability of PCI6540-BB13BC

All Rights Reserved © IC-ON-LINE 2003 - 2022  

[Add Bookmark] [Contact Us] [Link exchange] [Privacy policy]
Mirror Sites :  [www.datasheet.hk]   [www.maxim4u.com]  [www.ic-on-line.cn] [www.ic-on-line.com] [www.ic-on-line.net] [www.alldatasheet.com.cn] [www.gdcy.com]  [www.gdcy.net]


 . . . . .
  We use cookies to deliver the best possible web experience and assist with our advertising efforts. By continuing to use this site, you consent to the use of cookies. For more information on cookies, please take a look at our Privacy Policy. X